Elaborar um programa em C++ para exibir na tela as tabuadas do 2 ao 9. Os valores deverão ser calcul

1. Elaborar um programa em C++ para exibir na tela as tabuadas do 2 ao 9. Os valores deverão ser calcul

Lendel dos Santos Rodrigues
lendel

(usa Linux Mint)

Enviado em 12/09/2017 - 12:12h

pessoal estou com um problema na hora de colocar os zeros na frente dos números; eu coloquei a condição "if" para quando os valores de da função "j" que são impressos na tela na segunda linha serem menores que 10 acrescentarem um 0 na frente! acontece que quando o resultado da multiplicação da função "j*k" passa de 10 a condição que o j tem que colocar 0 na frente antes de ele se tornar maior que 10 não é obedecida.

ta aqui o codigo

#include <iostream>
#include <cmath>
#include <iomanip>

using namespace std;

int main (int argc, char *argv[]){

cout << "Programa para calcular e exibir na tela as tabuadas de 2 ao 9\n";

int i, j, k;

for(i=0; i <= 1; i++){
cout << endl;
for (j = 1; j <= 10; j++){
for (k = 2+4*i; k <= 5+4*i; k++)
if(j*k < 10){
if(j < 10)
cout << setfill(' ') << setw(0) << "0" << k << " x " << setw(0) << "0" << j << " = "
<< setfill(' ') << setw(0) << "0" << j*k << " ";
else
cout << setfill(' ') << setw(0) << "0" << k << " x " << setw(0) << j << " = "
<< setfill(' ') << setw(0) << "0" << j*k << " ";
}
else
cout << setfill(' ') << setw(0) << "0" << k << " x " << setw(0) << j << " = "
<< setfill(' ') << setw(0) << j*k << " ";
cout << endl;
}

}
return 0;
}
o resultado que aparece é esse

02 x 01 = 02 03 x 01 = 03 04 x 01 = 04 05 x 01 = 05
02 x 02 = 04 03 x 02 = 06 04 x 02 = 08 05 x 2 = 10
02 x 03 = 06 03 x 03 = 09 04 x 3 = 12 05 x 3 = 15
02 x 04 = 08 03 x 4 = 12 04 x 4 = 16 05 x 4 = 20
02 x 5 = 10 03 x 5 = 15 04 x 5 = 20 05 x 5 = 25
02 x 6 = 12 03 x 6 = 18 04 x 6 = 24 05 x 6 = 30
02 x 7 = 14 03 x 7 = 21 04 x 7 = 28 05 x 7 = 35
02 x 8 = 16 03 x 8 = 24 04 x 8 = 32 05 x 8 = 40
02 x 9 = 18 03 x 9 = 27 04 x 9 = 36 05 x 9 = 45
02 x 10 = 20 03 x 10 = 30 04 x 10 = 40 05 x 10 = 50

06 x 01 = 06 07 x 01 = 07 08 x 01 = 08 09 x 01 = 09
06 x 2 = 12 07 x 2 = 14 08 x 2 = 16 09 x 2 = 18
06 x 3 = 18 07 x 3 = 21 08 x 3 = 24 09 x 3 = 27
06 x 4 = 24 07 x 4 = 28 08 x 4 = 32 09 x 4 = 36
06 x 5 = 30 07 x 5 = 35 08 x 5 = 40 09 x 5 = 45
06 x 6 = 36 07 x 6 = 42 08 x 6 = 48 09 x 6 = 54
06 x 7 = 42 07 x 7 = 49 08 x 7 = 56 09 x 7 = 63
06 x 8 = 48 07 x 8 = 56 08 x 8 = 64 09 x 8 = 72
06 x 9 = 54 07 x 9 = 63 08 x 9 = 72 09 x 9 = 81
06 x 10 = 60 07 x 10 = 70 08 x 10 = 80 09 x 10 = 90

o resultado que deveria aparecer é esse

02 x 01 = 02 03 x 01 = 03 04 x 01 = 04 05 x 01 = 05
02 x 02 = 04 03 x 02 = 06 04 x 02 = 08 05 x 02 = 10
02 x 03 = 06 03 x 03 = 09 04 x 03 = 12 05 x 03 = 15
02 x 04 = 08 03 x 04 = 12 04 x 04 = 16 05 x 04 = 20
02 x 05 = 10 03 x 05 = 15 04 x 05 = 20 05 x 05 = 25
02 x 06 = 12 03 x 06 = 18 04 x 06 = 24 05 x 06 = 30
02 x 07 = 14 03 x 07 = 21 04 x 07 = 28 05 x 07 = 35
02 x 08 = 16 03 x 08 = 24 04 x 08 = 32 05 x 08 = 40
02 x 09 = 18 03 x 09 = 27 04 x 09 = 36 05 x 09 = 45
02 x 10 = 20 03 x 10 = 30 04 x 10 = 40 05 x 10 = 50

06 x 01 = 06 07 x 01 = 07 08 x 01 = 08 09 x 01 = 09
06 x 02 = 12 07 x 02 = 14 08 x 02 = 16 09 x 02 = 18
06 x 03 = 18 07 x 03 = 21 08 x 03 = 24 09 x 03 = 27
06 x 04 = 24 07 x 04 = 28 08 x 04 = 32 09 x 04 = 36
06 x 05 = 30 07 x 05 = 35 08 x 05 = 40 09 x 05 = 45
06 x 06 = 36 07 x 06 = 42 08 x 06 = 48 09 x 06 = 54
06 x 07 = 42 07 x 07 = 49 08 x 07 = 56 09 x 07 = 63
06 x 08 = 48 07 x 08 = 56 08 x 08 = 64 09 x 08 = 72
06 x 09 = 54 07 x 09 = 63 08 x 09 = 72 09 x 09 = 81
06 x 10 = 60 07 x 10 = 70 08 x 10 = 80 09 x 10 = 90


  


2. Re: Elaborar um programa em C++ para exibir na tela as tabuadas do 2 ao 9. Os valores deverão ser ca

Uilian Ries
uilianries

(usa Linux Mint)

Enviado em 12/09/2017 - 12:36h

Se você utilizar printf para formatar, pode utilizar algo como:


printf("%.2d\n", 8);
printf("%.2d\n", 10);


A saída será:


08
10


Mas no seu caso, queres utilizar iostream, logo:


for (int multiplicador = 2; multiplicador <= 6; multiplicador += 4) {
for (int multiplicando = 1; multiplicando <= 10; ++multiplicando) {
for (int coluna = 0; coluna <= 3; ++coluna) {
std::cout << std::setfill('0') << std::setw(2) << (multiplicador + coluna) << " X " \
<< std::setfill('0') << std::setw(2) << multiplicando << " = " \
<< std::setfill('0') << std::setw(2) << ((multiplicador + coluna) * multiplicando) << " ";
}
std::cout << std::endl;
}
std::cout << std::endl;
}


A saída será:


02 X 01 = 02 03 X 01 = 03 04 X 01 = 04 05 X 01 = 05
02 X 02 = 04 03 X 02 = 06 04 X 02 = 08 05 X 02 = 10
02 X 03 = 06 03 X 03 = 09 04 X 03 = 12 05 X 03 = 15
02 X 04 = 08 03 X 04 = 12 04 X 04 = 16 05 X 04 = 20
02 X 05 = 10 03 X 05 = 15 04 X 05 = 20 05 X 05 = 25
02 X 06 = 12 03 X 06 = 18 04 X 06 = 24 05 X 06 = 30
02 X 07 = 14 03 X 07 = 21 04 X 07 = 28 05 X 07 = 35
02 X 08 = 16 03 X 08 = 24 04 X 08 = 32 05 X 08 = 40
02 X 09 = 18 03 X 09 = 27 04 X 09 = 36 05 X 09 = 45
02 X 10 = 20 03 X 10 = 30 04 X 10 = 40 05 X 10 = 50

06 X 01 = 06 07 X 01 = 07 08 X 01 = 08 09 X 01 = 09
06 X 02 = 12 07 X 02 = 14 08 X 02 = 16 09 X 02 = 18
06 X 03 = 18 07 X 03 = 21 08 X 03 = 24 09 X 03 = 27
06 X 04 = 24 07 X 04 = 28 08 X 04 = 32 09 X 04 = 36
06 X 05 = 30 07 X 05 = 35 08 X 05 = 40 09 X 05 = 45
06 X 06 = 36 07 X 06 = 42 08 X 06 = 48 09 X 06 = 54
06 X 07 = 42 07 X 07 = 49 08 X 07 = 56 09 X 07 = 63
06 X 08 = 48 07 X 08 = 56 08 X 08 = 64 09 X 08 = 72
06 X 09 = 54 07 X 09 = 63 08 X 09 = 72 09 X 09 = 81
06 X 10 = 60 07 X 10 = 70 08 X 10 = 80 09 X 10 = 90



3. Re: Elaborar um programa em C++ para exibir na tela as tabuadas do 2 ao 9. Os valores deverão ser ca

Paulo
paulo1205

(usa Ubuntu)

Enviado em 12/09/2017 - 12:43h

Você usou a solução no seu programa, só que do jeito errado.

Use setfill('0') apenas uma vez, no início do programa, e depois setw(2) antes de imprimir cada valor numérico.


4. Re: Elaborar um programa em C++ para exibir na tela as tabuadas do 2 ao 9. Os valores deverão ser ca

Lendel dos Santos Rodrigues
lendel

(usa Linux Mint)

Enviado em 12/09/2017 - 16:12h

uilianries escreveu:

Se você utilizar printf para formatar, pode utilizar algo como:


printf("%.2d\n", 8);
printf("%.2d\n", 10);


A saída será:


08
10


Mas no seu caso, queres utilizar iostream, logo:


for (int multiplicador = 2; multiplicador <= 6; multiplicador += 4) {
for (int multiplicando = 1; multiplicando <= 10; ++multiplicando) {
for (int coluna = 0; coluna <= 3; ++coluna) {
std::cout << std::setfill('0') << std::setw(2) << (multiplicador + coluna) << " X " \
<< std::setfill('0') << std::setw(2) << multiplicando << " = " \
<< std::setfill('0') << std::setw(2) << ((multiplicador + coluna) * multiplicando) << " ";
}
std::cout << std::endl;
}
std::cout << std::endl;
}


A saída será:


02 X 01 = 02 03 X 01 = 03 04 X 01 = 04 05 X 01 = 05
02 X 02 = 04 03 X 02 = 06 04 X 02 = 08 05 X 02 = 10
02 X 03 = 06 03 X 03 = 09 04 X 03 = 12 05 X 03 = 15
02 X 04 = 08 03 X 04 = 12 04 X 04 = 16 05 X 04 = 20
02 X 05 = 10 03 X 05 = 15 04 X 05 = 20 05 X 05 = 25
02 X 06 = 12 03 X 06 = 18 04 X 06 = 24 05 X 06 = 30
02 X 07 = 14 03 X 07 = 21 04 X 07 = 28 05 X 07 = 35
02 X 08 = 16 03 X 08 = 24 04 X 08 = 32 05 X 08 = 40
02 X 09 = 18 03 X 09 = 27 04 X 09 = 36 05 X 09 = 45
02 X 10 = 20 03 X 10 = 30 04 X 10 = 40 05 X 10 = 50

06 X 01 = 06 07 X 01 = 07 08 X 01 = 08 09 X 01 = 09
06 X 02 = 12 07 X 02 = 14 08 X 02 = 16 09 X 02 = 18
06 X 03 = 18 07 X 03 = 21 08 X 03 = 24 09 X 03 = 27
06 X 04 = 24 07 X 04 = 28 08 X 04 = 32 09 X 04 = 36
06 X 05 = 30 07 X 05 = 35 08 X 05 = 40 09 X 05 = 45
06 X 06 = 36 07 X 06 = 42 08 X 06 = 48 09 X 06 = 54
06 X 07 = 42 07 X 07 = 49 08 X 07 = 56 09 X 07 = 63
06 X 08 = 48 07 X 08 = 56 08 X 08 = 64 09 X 08 = 72
06 X 09 = 54 07 X 09 = 63 08 X 09 = 72 09 X 09 = 81
06 X 10 = 60 07 X 10 = 70 08 X 10 = 80 09 X 10 = 90


Valeu Cara! Resolveu meu problema, fiz assim agora, peguei sua ideia! e deu certo

#include <iostream>
#include <cmath>
#include <iomanip>

using namespace std;

int main (int argc, char *argv[]){

cout << "Programa para calcular e exibir na tela as tabuadas de 2 ao 9\n";

int i, j, k;

for(i=0; i <= 1; i++){
cout << endl;
for (j = 1; j <= 10; j++){
for (k = 2+4*i; k <= 5+4*i; k++)
cout << setfill('0') << setw(2) << k << " x "
<< setfill('0') << setw(2) << j << " = "
<< setfill('0') << setw(2) << j*k << " ";

cout << endl;
}

}
return 0;
}







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts