Ir ao conteúdo
  • Cadastre-se
isoftware

C++ Exercício que imprima N linhas na tela

Recommended Posts

Bom dia,
Tenho uma duvida sobre como começar o exercício abaixo (OBS: Sou novo em programação).
1 - Escreva uma função que receba um número inteiro como parâmetro. E informe na tela N linhas conforme o exemplo abaixo:
TELA:
Informe um número: 10

100 81 64 49 36 25 16 9 4 1
81 64 49 36 25 16 9 4 1
64 49 36 25 16 9 4 1
49 36 25 16 9 4 1
36 25 16 9 4 1
25 16 9 4 1
16 9 4 1
9 4 1
4 1
1

Única coisa que entendi sobre esse exercício, e que os números são raízes exatas , tipo 1x1, 2x2, 3x3, 4x4, etc...
Se alguém poder ajudar agradeço

Compartilhar este post


Link para o post
Compartilhar em outros sites
#include <iostream>

using namespace std;

int main()
{
   int tam;

   cout << "Informe um numero: ";
   cin >> tam;

  for(int i = 1; i <=tam; i++){
        for(int j = 1; j <= i; j++){
        cout << i*j <<" ";
    }
    cout << endl;
   }

    return 0;
}

Cheguei nisso usando o  c++, mas o resultando continua diferente, pois estou somente multiplicando os vetores. como eu faço pra mostra somente os números que são raízes exatas?

RESULTADO:

1

2 4

3 6 9

4 8 12 16

5 10 15 20 25

6 12 18 24 30 36

7 14 21 28 35 42 49

8 16 24 32 40 48 56 64

9 18 27 36 45 54 63 72 81

10 20 30 40 50 60 70 80 90 100

 

 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para obter raízes exatas basta calcular o quadrado de números inteiros. Nesse caso multiplica a variável por ela mesma, como j * j.

 

E os ciclos for estão ao contrário, a neles contagem deve ser regressiva, começando do número digitado e ir subtraindo 1 até chegar em 1.

 

#include <iostream>

using namespace std;

int main()
{
    int tam;
    
    cout << "Informe um numero: ";
    cin >> tam;
    
    for(int i = tam; i > 0; i--){
        for(int j = i; j >0; j--){
            cout << j*j <<" ";
        }
        cout << endl;
    }
    
    return 0;
}

 

  • Curtir 1
  • Obrigado 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
12 horas atrás, isrnick disse:

Para obter raízes exatas basta calcular o quadrado de números inteiros. Nesse caso multiplica a variável por ela mesma, como j * j.

 

E os ciclos for estão ao contrário, a neles contagem deve ser regressiva, começando do número digitado e ir subtraindo 1 até chegar em 1.

 


#include <iostream>

using namespace std;

int main()
{
    int tam;
    
    cout << "Informe um numero: ";
    cin >> tam;
    
    for(int i = tam; i > 0; i--){
        for(int j = i; j >0; j--){
            cout << j*j <<" ";
        }
        cout << endl;
    }
    
    return 0;
}

 

Real não tinha percebido isso, q o for era decrescente.

Obrigado !!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×