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

dodawanie na stringach

Ostatnio zmodyfikowano 2015-06-09 23:44
Autor Wiadomość
wojtek.997
Temat założony przez niniejszego użytkownika
dodawanie na stringach
» 2015-06-08 00:17:36
Mam zrobić program który dodaje pisemnie liczby
C/C++
#include <iostream>
#include <cstdio>
#include <cstdlib>
using namespace std;
int main()
{
    string pierwszaliczba;
    string drugaliczba;
    string wynik;
    cout << "Podaj pierwsza liczbe " << endl;
    cin >> pierwszaliczba;
    cout << "Podaj druga liczbe " << endl;
    cin >> drugaliczba;
    int rozmiar1, rozmiar2;
    int jednosci, dziesiatki, setki;
    rozmiar1 = pierwszaliczba.length();
    rozmiar2 = drugaliczba.length();
    cout << "rozmiar pierwszej liczby = " << rozmiar1 << endl;
    cout << "rozmiar drugiej liczby = " << rozmiar2 << endl;
    jednosci = pierwszaliczba[ 2 ] + drugaliczba[ 2 ];
    cout << "jednosci = " << jednosci << endl;
    if( jednosci >= 10 )
    {
        dziesiatki = pierwszaliczba[ 1 ] + drugaliczba[ 1 ] + 1;
        if(( dziesiatki >= 10 ) )
        {
            setki = pierwszaliczba[ 0 ] + drugaliczba[ 0 ] + 1;
            cout << pierwszaliczba << endl;
            cout << drugaliczba << endl;
            cout << "wynik1=" << jednosci << dziesiatki << setki << endl;
           
        }
        else
        {
            setki = pierwszaliczba[ 0 ] + drugaliczba[ 0 ];
            cout << pierwszaliczba << endl;
            cout << drugaliczba << endl;
            cout << "wynik2=" << jednosci << dziesiatki << setki << endl;
        }
    }
    else
    {
        dziesiatki = pierwszaliczba[ 1 ] + drugaliczba[ 1 ];
        if( dziesiatki >= 10 )
        {
            setki = pierwszaliczba[ 0 ] + drugaliczba[ 0 ] + 1;
            cout << pierwszaliczba << endl;
            cout << drugaliczba << endl;
            cout << "wynik3=" << jednosci << dziesiatki << setki << endl;
        }
        else
        {
            setki = pierwszaliczba[ 0 ] + drugaliczba[ 0 ] - 96;
            cout << " " << pierwszaliczba << endl;
            cout << "+" << drugaliczba << endl;
            cout << "--" << endl;
            cout << jednosci << dziesiatki << setki << endl;
           
        }
    }
   
    return 0;
}
wynik dziala tylko w ostatnim przypadku gdy jest wartosc o 96 mniejsza. Dlaczego?
Czy ktos moglby mi naprawic program?
P-133309
pekfos
» 2015-06-08 10:16:30
'0' nie jest równe 0.
P-133313
wojtek.997
Temat założony przez niniejszego użytkownika
» 2015-06-09 10:09:59
?
P-133368
pekfos
» 2015-06-09 23:44:25
C/C++
std::cout <<( int ) '0';
P-133415
« 1 »
  Strona 1 z 1