Potęgi
Ostatnio zmodyfikowano 2012-04-16 17:27
Kameleon Temat założony przez niniejszego użytkownika |
Potęgi » 2012-04-16 15:05:10 Witam otóż mam problem, chcę stworzyć program do Logarytmów, na razie wiele tam nie ma ale natknąłem się na taki problem: Najpierw wprowadzam zmienna nie wiadomo czy to liczba czy znak, wiec dałem CHAR ... potem chciałem zmienić CHAR na INT jednak program nie liczy odpowiednio potęgi ... coś poradzicie ? #include<iostream> #include<cstdio> #include<cstdlib> #include<math.h>
using namespace std;
int main() { char d, e, f; cout << " LOGARYTMY \n\n"; cout << "log"; cin >> d; system( "cls" ); cout << "log" << d << " "; cin >> e; system( "cls" ); cout << "log" << d << " " << e << "="; cin >> f; system( "cls" ); cout << "log" << d << " " << e << "=" << f; int a, b; a =( int ) d; b =( int ) f; int c = a; for( int i = 1; i < b; i++ ) { c = c * a; } cout << endl << c; cin.ignore(); getchar(); return 0; }
|
|
xevuel |
» 2012-04-16 15:21:45 [c++] Jak stworzyć łańcuch liczb? - Dla konwersji z int na char * atoi - Dla konwersji char * na int. atof | Konwertuje wartość zapisaną w łańcuchu znaków do postaci liczby zmiennoprzecinkowej (double). (funkcja) |
---|
atol | Konwertuje wartość zapisaną w łańcuchu znaków do postaci liczby typu całkowitego (long). (funkcja) |
---|
- Dla konwersji z char * na inne typy liczbowe. |
|
Kameleon Temat założony przez niniejszego użytkownika |
» 2012-04-16 16:33:18 No nie wiem, kombinuje i kombinuje i nic. Problem w const char. :| #include<iostream> #include<cstdio> #include<cstdlib> #include<math.h>
using namespace std;
int main() { const char a, b; cin >> a; cin >> b; int liczba = atol( a ); cout << liczba; cin.ignore(); getchar(); return 0; }
|
|
SeaMonster131 |
» 2012-04-16 16:36:25 atol() jest dla long, a nie dla int. A poza tym, dlaczego masz const char? |
|
Kameleon Temat założony przez niniejszego użytkownika |
» 2012-04-16 16:44:42 Nadal nic ... :P #include<iostream> #include<cstdio> #include<cstdlib> #include<math.h>
using namespace std;
int main() { char a, b; cin >> a; cin >> b; long liczba = atol( a ); cout << liczba; cin.ignore(); getchar(); return 0; }
|
|
xevuel |
» 2012-04-16 16:58:41 Zmień char a, b; na char a[ 100 ]; char b[ 100 ]; I nie używaj emotikony :P, bo to dziwnie wygląda, jak prosisz o pomoc. |
|
Kameleon Temat założony przez niniejszego użytkownika |
» 2012-04-16 17:08:28 No ale jak zmienię tak dane w moim programie to funkcja if będzie mi robiła błąd, jeśli zaś zmienię "e" na int to znów bez sensu będzie bo nie wykryje znaku tak jakby ... oto program jednak coś jest nie tak popatrzcie: #include<iostream> #include<cstdio> #include<cstdlib> #include<math.h>
using namespace std;
int main() { char d[ 100 ], e[ 80 ], f[ 100 ]; cout << " LOGARYTMY \n\n"; cout << "log"; cin >> d; system( "cls" ); cout << "log" << d << " "; cin >> e; system( "cls" ); cout << "log" << d << " " << e << "="; cin >> f; system( "cls" ); cout << "log" << d << " " << e << "=" << f; long int a = atol( d ); long int b = atol( f ); long int p = atol( e ); if( p == 'x' ) { int c = a; for( int i = 1; i < b; i++ ) { c = c * a; } cout << endl << c; } cin.ignore(); getchar(); return 0; }
|
|
xevuel |
» 2012-04-16 17:27:31 |
|
« 1 » |