Lohana 0 Denunciar post Postado Março 14, 2015 Um numero é considerado triangular se ele é o produto de 3 números inteiros sucessivos , Ex 120=4*5*6.Crie um programa que informe se um numero é triangular ou não. Dei inicio assim : #include <ioatrem.h> int num; int main() { cout<<” Informe um numero “<<endl; cin>>num; *preciso utilizar essa biblioteca e esses meios como : cout , float , int ... .SEM alteração. Compartilhar este post Link para o post Compartilhar em outros sites
CITH 4 Denunciar post Postado Março 15, 2015 Tente fazer com 3 for integrados (um dentro do outro) utilizando os seus contadores. A cada loop você testa se o produto dos contadores é igual ao número inserido, se for, você usa algum método pra confirmar, por exemplo: "Confirm = 1". Quando sair dos for, você colocar um condição pra detectar se foi confirmado. Compartilhar este post Link para o post Compartilhar em outros sites
_Isis_ 202 Denunciar post Postado Março 16, 2015 #include <iostream> using namespace std; int main(void) { int num, i; cout << "Informe um inteiro: "; cin >> num; i=1; while(i * (i+1) * (i+2) < num) { i++; } if (i * (i+1) * (i+2) == num) { cout << "Número triangular\n"; } else { cout << "Não é um número triangular\n"; } return 0; } Ou, chuto eu (porque não encontrei nenhuma demonstração matemática sobre isso), você pode fazer o seguinte: #include <iostream> #include <math> using namespace std; int main(void) { int num; double cube_root; int minimum_term; cout << "Informe um número: "; cin >> num; cube_root = pow(num, 1/3.0); minimum_term = (int) floor(cube_root); if (minimum_ term * (minimum_term + 1) * (minimum_term + 2) == num) { cout << "Triangular\n"; } return 0; } Compartilhar este post Link para o post Compartilhar em outros sites