Ir ao conteúdo
  • Cadastre-se

Ajuda


BlackSephira

Posts recomendados

Alguem pode em ajudar ? Estou com o seguinte erro na hora de compilar e não sei o problema "/ Sou iniciante em Pascal e aprendi Procedure a poucos dias, si algum poder me ajudar eu agradeço.

image.php?f2263a7c0b.jpg


program Project2;

{$APPTYPE CONSOLE}

uses
SysUtils;

procedure proc_futebol;
var
i: integer;
qnt_jogadores: array[1..15] of string;
begin
for i:= 1 to 11 do
begin
write('Digite o numero');
readln(qnt_jogadores);
end;
end;

procedure proc_basquete;
var
i: integer;
qnt_jogadores: array[1..15] of string;
begin
for i:= 1 to 11 do
begin
write('Digite o numero');
readln(qnt_jogadores);
end;
end;

procedure proc_volei;
var
i: integer;
qnt_jogadores: array[1..15] of string;
begin
for i:= 1 to 11 do
begin
write('Digite o numero');
readln(qnt_jogadores);
end;
end;

var
opcao_esporte: integer;
begin
writeln('Digite qual esporte: ');
writeln('1 - Futebol');
writeln('2 - Basquete');
writeln('3 - Volei');
readln(opcao_esporte);
if opcao_esporte = 1 then
begin
proc_futebol;
end
else if opcao_esporte = 2 then
begin
proc_basquete;
end
else if opcao_esporte = 3 then
begin
proc_volei;
end
else if opcao_esporte > 3 then
begin
writeln('Operacao invalida');
end;
end.

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

Alguem pode em ajudar ? Estou com o seguinte erro na hora de compilar e não sei o problema "/ Sou iniciante em Pascal e aprendi Procedure a poucos dias, si algum poder me ajudar eu agradeço.

image.php?f2263a7c0b.jpg


program Project2;

{$APPTYPE CONSOLE}

uses
SysUtils;

procedure proc_futebol;
var
i: integer;
qnt_jogadores: array[1..15] of string;
begin
for i:= 1 to 11 do
begin
write('Digite o numero');
readln(qnt_jogadores);
end;
end;

procedure proc_basquete;
var
i: integer;
qnt_jogadores: array[1..15] of string;
begin
for i:= 1 to 11 do
begin
write('Digite o numero');
readln(qnt_jogadores);
end;
end;

procedure proc_volei;
var
i: integer;
qnt_jogadores: array[1..15] of string;
begin
for i:= 1 to 11 do
begin
write('Digite o numero');
readln(qnt_jogadores);
end;
end;

var
opcao_esporte: integer;
begin
writeln('Digite qual esporte: ');
writeln('1 - Futebol');
writeln('2 - Basquete');
writeln('3 - Volei');
readln(opcao_esporte);
if opcao_esporte = 1 then
begin
proc_futebol;
end
else if opcao_esporte = 2 then
begin
proc_basquete;
end
else if opcao_esporte = 3 then
begin
proc_volei;
end
else if opcao_esporte > 3 then
begin
writeln('Operacao invalida');
end;
end.


Olá,

BlackSephira, o erro é mais simples que parece. Você só esqueceu de passar as coordenadas dos array nos readln().

[color=#008000]//readln(qnt_jogadores); {falta a posição}[/color]
[color=#000000]readln[/color][color=#000000]([/color]qnt_jogadores[color=#000000][[/color]i[color=#000000]]);[/color]

:)

***

PS: Faltou você postar qual era o erro. Aqui acusou:

Error: Can't read or write variables of this type

Traduzindo:

"Não é possível ler ou escrever as variáveis deste tipo".

O Pascal não sabe ler arrays, mas string sabe!!!

ex.:

qnt_jogadores[1]

.

PS2: Aproveitando, vou passar uma dica:

Como visto, não é possível ler e escreve arrays sem a posição, mas podem-se também trabalhar diretamente com elas.

Ex.:

  [color=#0000ff]var[/color]
qnt_jogadores1[color=#000000],[/color] qnt_jogadores2 [color=#000000]:[/color] [color=#0000ff]array[/color][color=#000000][[/color][color=#000000]1[/color][color=#000000].[/color][color=#000000].15[/color][color=#000000]][/color] [color=#0000ff]of string[/color][color=#000000];[/color]
[color=#0000ff]begin[/color]
qnt_jogadores1[color=#000000]:=[/color]qnt_jogadores1[color=#000000];[/color] [color=#008000]{ele vai igualar posição por posição correspondente}[/color]
[color=#0000ff]end[/color][color=#000000];[/color];

Assim caso queira copiar um array, você não precisar igualar um por um manualmente. Basta igualar o array todo!!!

No aguardo

Abraços

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!