Por exemplo, as seguintes linhas devem ser apresentadas se N = 5.
5 10 15 20 25
6 12 18 24
7 14 21
8 16
9
Se N < 1, uma mensagem de erro deve ser apresentada no vídeo.
Não sei se tem uma solução melhor, espero que ajude:
-----------------------------------------------------------------------------------------------------------------
Program Programa ;
Var n, i, j, k, l: integer;
Begin
writeln('Digite um numero:');
read(n);
if (n < 1) then
writeln('Valor invalido')
else
begin
j := 0;
k := n;
for i := n to 2*n - 1 do
begin
for l := 1 to k do
begin
j := j + i;
write(j);
write(' ');
end;
writeln('');
k := k - 1;
j := 0;
end;
end;
End.
-----------------------------------------------------------------------------------------------------------------
O meu tava saindo assim:
1 2 3 4 5
2 4 6 8
3 6 9
4 8
5
Agora eu consegui, graças a sua ajuda. Te agradeço imensamente!
Para esta resolução foi utilizado conhecimentos em C, dada a baixa complexidade dessa linguagem e fácil compreensão. Neste algoritmo, foram criados três condições de verificação, o primeiro IF para verificar se o número digitado é igual a 0, os próximos ELSE e dentro dele dois FOR para imprimir a primeira sequência, incrementando de acordo com o número informado e somando ele próprio e o segundo FOR decrementando para imprimir a sequência da segunda linha, assim por diante.
#include <stdio.h>
int main (){
int n1 = 0;
int i; //contador
//ler o numero
printf ("Informe um numero: %d");
scanf ("&d", &n1);
//verifica se é menor que zero para nao fazer a impressão
if (n1 < = 0)
printf ("Informe um numero valido!!")
else {
for (i=0, i<= n1, i++){
printf("%d %d ", n1,n1+n1); //vai imprimir a sequencia
for (i = 0, i<n1, i--){
printf("%d %d ", n1,n1+n1); // vai decrementando a proxima linha
}
}
}
return 0;
}
Para escrever sua resposta aqui, entre ou crie uma conta
Lógica de Programação e Algoritmos
•IBMR
Compartilhar