matheusjunio 0 Denunciar post Postado Maio 14, 2008 Escreva um programa que leia 10 números inteiros e armazene em dois veotes de 5 elementos cada, consecutivamente(os 5 primeiros números serão do vetor 1 e os outros 5 do vetor 2). Intercale os dois vetores, colocando os elementos num terceiro vetor, mostrando-o, em seguida. Compartilhar este post Link para o post Compartilhar em outros sites
Kandrade 7 Denunciar post Postado Maio 14, 2008 Tentou fazer alguma coisa? Voce precisa de alguns "loop" para fazer isso. Aprendeu a usar o loop para? Compartilhar este post Link para o post Compartilhar em outros sites
matheusjunio 0 Denunciar post Postado Maio 14, 2008 Então Kandrade, eu sei que eu preciso usar o loop para, mas não sei como declará-lo. Como que eu declaro ele? Eu fiz assim só que deu errado Program notasuperior; uses wincrt; var notas:array[1..10]of real; i,total:integer; media:real; begin total:=0; media:=0; for i:=0 to 10 do begin writeln('Digite a nota do aluno:'); readln(notas[i]); media:=media + notas[i]; begin media:=media/10; total:= notas[i] > media; end; end; writeln('A média dos alunos é:'media); writeln('O total de alunos que tiveram nota superior a média foram:'total); end. onde foi que eu errei? Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Maio 14, 2008 naum entendi sua lógica você abre um begin do for depois abre outro begin do nd e faz eles aninhados.. verifique isso! []'s Alterado: Me ajudem a fazer este programa http://forum.imasters.com.br/public/style_emoticons/default/seta.gif Intercalar vetores Compartilhar este post Link para o post Compartilhar em outros sites
Kandrade 7 Denunciar post Postado Maio 14, 2008 Voce precisa separar as coisas. Por exemplo: - ler 10 notas e separa-las em 2 vetores de 5 posições cada. Program notasuperior; uses wincrt; var vet1:array[1..10]of real; vet2:array[1..10]of real; i,total:integer; media, nota:real; begin total:=0; media:=0; // aqui voce armazena 5 notas no vetor 1 for i:=0 to 5 do begin writeln('Digite a nota do aluno:'); readln(nota); vet1[i]:= nota; end // aqui voce armazena 5 notas no vetor 2 for i:=0 to 5 do begin writeln('Digite a nota do aluno:'); readln(nota); vet2[i]:= nota; end end Compartilhar este post Link para o post Compartilhar em outros sites
matheusjunio 0 Denunciar post Postado Maio 14, 2008 Valeu Kandrade pela ajuda, é desse jeito que você me ajudou me passando o código é que era meu objetivo Só que o programa ainda deu erro, esquece esse negocio do total das notas e media. Como que o programa que você me passou ficaria usando dois vetores de 5 elementos cada, consecutivamente(os 5 primeiros números digitados serão do vetor 1 e os outros 5 do vetor 2 ). Intercalando os dois vetores, colocando os elementos num terceiro vetor ,montrando-o, em seguida. Compartilhar este post Link para o post Compartilhar em outros sites
Giovanni Ritchie 0 Denunciar post Postado Maio 14, 2008 CODE program intercala;uses CRT;varvet1,vet2: array[1..5] of integer;vet3:array[1..10] of integer;i,j:integer;beginfor i:=1 to 5 do begin {preencendo o primeiro vector} write('Insira o ',i,'elemento'); readln(vet1); vet3:=vet1; {a medida que le, vai passando pra o vet3} end;j:=1;for i:=6 to 10 dobegin {preenchendo o segundo vetor} write('Insira o ',i,'elemento'); readln(vet2[j]); vet3:=vet2[j]; {aqui comeca a passar os elementos do segundo vetor, repara que i vai de 6 ate 10 } j:=j+1;end;for i:=1 to 10 do write(vet3); {imprime o vet3}readkey;end. Ai MatheusJunio espero ter ajudado.... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
matheusjunio 0 Denunciar post Postado Maio 15, 2008 Você me ajudou bastante Giovanny Ritchie, nesse forum você é o que mais me ajudou, muito obrigado. Só que este código que você me passou nao ta intercalando os elementos inseridos, o vet3 só imprime os elementos na ordem que foram inseridos, será porquê? Qual é o erro neste código? Se puder me ajudar mais esta vez, desde já agradeço. Compartilhar este post Link para o post Compartilhar em outros sites
Giovanni Ritchie 0 Denunciar post Postado Maio 15, 2008 Só que este código que você me passou nao ta intercalando os elementos inseridos, o vet3 só imprime os elementos na ordem que foram inseridos, será porquê? Qual é o erro neste código? Se puder me ajudar mais esta vez, desde já agradeço. Tem Razao matheusjunio, tinha interpretado mal....mas aqui vai o codigo intercalando: CODE program intercala; uses CRT; var vet1,vet2: array[1..5] of integer; vet3:array[1..10] of integer; i:integer; begin for i:=1 to 5 do begin {preencendo o primeiro vector} write('Insira o ',i,'elemento'); readln(vet1); vet3[i*2-1]:=vet1; {a medida que le, vai passando os valores de vet1 pra o posicoes impares do vet3} end; for i:=1 to 5 do begin {preenchendo o segundo vetor} write('Insira o ',i,'elemento'); readln(vet2[j]); vet3[i*2]:=vet2; {aqui comeca a passar os elementos do vet2 pra posicoes pares de vet3 } end; for i:=1 to 10 do write(vet3); {imprime o vet3} readkey; end. Que tal agora??? Espero ter ajudado voce..... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites