Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Potęgowanie - kalkulator

Ostatnio zmodyfikowano 2020-02-11 14:47
Autor Wiadomość
Kacper96
Temat założony przez niniejszego użytkownika
Potęgowanie - kalkulator
» 2020-01-24 11:04:06
Witam,
Mam problem, ponieważ nie wiem jak dopisać do kodu co mam funkcję odpowiadającą za potęgowanie :(
Próbowałem funkcji pow() ale coś mi nie działa.
Jakby ktoś mógł pomóc dopisać do obecnego kodu ową funkcje.

C/C++
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>

using namespace std;

int main()
{
    while( true )
    {
       
        string dzialanie, var1, var2, str;
        char zadanie;
        getline( std::cin, dzialanie );
        for( int i = 0; i < dzialanie.length(); i++ )
        {
            if( dzialanie[ i ] == '-' || dzialanie[ i ] == '+' || dzialanie[ i ] == '*' || dzialanie[ i ] == '/' )
            {
                zadanie = dzialanie[ i ];
                var1 = str;
                str = "";
                continue;
            }
            str += dzialanie[ i ];
        }
        var2 = str;
        if( zadanie == '-' ) cout << strtof(( var1 ).c_str(), 0 ) - strtof(( var2 ).c_str(), 0 ) << endl;
       
        if( zadanie == '+' ) cout << strtof(( var1 ).c_str(), 0 ) + strtof(( var2 ).c_str(), 0 ) << endl;
       
        if( zadanie == '*' ) cout << strtof(( var1 ).c_str(), 0 ) * strtof(( var2 ).c_str(), 0 ) << endl;
       
        if( zadanie == '/' ) cout << strtof(( var1 ).c_str(), 0 ) / strtof(( var2 ).c_str(), 0 ) << endl;
       
    }
}
P-176122
pekfos
» 2020-01-24 17:28:19
Podaj właściwy kod. Ten z którym masz problem, a nie z którym miałbyś problem, gdybyś próbował to dopisać sam.
P-176124
mizie
Rozwiązanie
» 2020-02-11 14:47:24
Oto i twoje potęgowanie:

C/C++
// Ctrl + C pozwala na opuszczenie programu
#include <cstdlib> // strtod()
#include <cmath> // pow()
#include <iostream>
#include <string>
using std::string;
using std::cin;
using std::cout;
using std::endl;

int main()
{
    while( true ) {
        string dzialanie, var1, var2, str;
        char zadanie;
        getline( std::cin, dzialanie );
        for( int i = 0; i < dzialanie.length(); i++ ) {
            if( dzialanie[ i ] == '-' || dzialanie[ i ] == '+' || dzialanie[ i ] == '*' || dzialanie[ i ] == '/' || dzialanie[ i ] == '^' ) {
                zadanie = dzialanie[ i ];
                var1 = str;
                str = "";
                continue;
            }
            str += dzialanie[ i ];
        }
        var2 = str;
        if( zadanie == '-' )
             cout << strtod( var1.c_str(), nullptr ) - strtod( var2.c_str(), nullptr ) << endl;
       
        if( zadanie == '+' )
             cout << strtod( var1.c_str(), nullptr ) + strtod( var2.c_str(), nullptr ) << endl;
       
        if( zadanie == '*' )
             cout << strtod( var1.c_str(), nullptr ) * strtod( var2.c_str(), nullptr ) << endl;
       
        if( zadanie == '/' )
             cout << strtod( var1.c_str(), nullptr ) / strtod( var2.c_str(), nullptr ) << endl;
       
        if( zadanie == '^' )
             cout << pow( strtod( var1.c_str(), nullptr ), strtod( var2.c_str(), nullptr ) ) << endl;
       
    }
    return 0;
}
P-176228
« 1 »
  Strona 1 z 1