Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.04.2011, 01:54   #1
Strannik_kz
 
Регистрация: 07.10.2009
Сообщений: 4
По умолчанию Ошибка с калькулятором 8 с/с

Ребят подскажите не могу понять в чем ошибка, нужно чтоб он решал в восьмеричной с/с, но не хочет решать кому не сложно может объяснить что я тут намудрил не так

Код:
#include <cstdlib>
#include <iostream>
#include <math.h>

using namespace std;
int qwe ();
int asd ();
int main()
{
    int num = 0, num2 = 0;
    char choice;

    for (;;){
     do {
    cout<<"Dobro pojalovat' v calc\n";
    cout<<"vyberite opciu, kotoraya vam neobhodima. dlya vyhoda najmite 'q'\n";
    cout<<"1 - Slojenie\n";
    cout<<"2 - Vy4itanie\n";
    cout<<"3 - Delenie\n";
    cout<<"4 - Umnojenie\n";

    cin>>choice;
    } while ( choice < '1' || choice > '4' && choice != 'q');
    if (choice == 'q') break;
    switch (choice) {
           case '1':
                num = qwe();
                num2 = asd();
                cout<<num + num2;
                cout<<"\n";
                break;
           case '2':
                num = qwe();
                num2 = asd();
                cout<<num - num2;
                cout<<"\n";
                break;
           case '3':
                num = qwe();
                num2 = asd();
                cout<<num / num2;
                cout<<"\n";
                break;
           case '4':
                num = qwe();
                num2 = asd();
                cout<<num * num2;
                cout<<"\n";
                break;

                }

}
return 0;
}

int qwe ()
{
    int y=0, a=0,i,count=0,j,as,sa;
    char str[50];
    cout<<"vvodite 1\n";
    cin>>str;
    for (i=0; str[i]!='\0'; i++)
        {
        if (str[i]!=' ')
            {
            count++;
            }
        }

    int mas[count];
    char popo;

    for (i=0; i<count; i++)
     {
     popo=str[i];
     switch (popo)
       {
        case '0': {mas[i]=0;} break;
        case '1': {mas[i]=1;} break;
        case '2': {mas[i]=2;} break;
        case '3': {mas[i]=3;} break;
        case '4': {mas[i]=4;} break;
        case '5': {mas[i]=5;} break;
        case '6': {mas[i]=6;} break;
        case '7': {mas[i]=7;} break;
            }
     }
    for (i=0; i<count; i++)
      {
      sa=((count-i)-1);
      //as=mas[i];
      a=a+(mas[i]*(pow(8,sa)));
      }
return a;
}

int asd ()
{
    int y=0, b=0,i,count=0,j,as,sa;
     char str[50];
    cout<<"vvodite 2\n";
    cin>>str;
    for (i=0; str[i]!='\0'; i++)
        {
        if (str[i]!=' ')
            {
            count++;
            }
        }

    int mas[count];
    char popo;

    for (i=0; i<count; i++)
     {
     popo=str[i];
     switch (popo)
       {
        case '0': {mas[i]=0;} break;
        case '1': {mas[i]=1;} break;
        case '2': {mas[i]=2;} break;
        case '3': {mas[i]=3;} break;
        case '4': {mas[i]=4;} break;
        case '5': {mas[i]=5;} break;
        case '6': {mas[i]=6;} break;
        case '7': {mas[i]=7;} break;

       }
     }
    for (i=0; i<count; i++)
      {
      sa=((count-i)-1);
      as=mas[i];
      b=b+(mas[i]*(pow(8,sa)));
      }
return b;
}

Последний раз редактировалось ACE Valery; 28.04.2011 в 05:35.
Strannik_kz вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
проблема с калькулятором neprogrammist Общие вопросы Delphi 7 21.06.2010 19:17
Проблемка с калькулятором... .:Stimer:. Общие вопросы C/C++ 11 07.11.2009 17:06
Помогите с калькулятором vishnya454 Помощь студентам 8 07.01.2009 10:35
Проблема з калькулятором carbon383 Помощь студентам 22 02.11.2008 11:49
Проблемы с калькулятором MAKEDON Помощь студентам 18 02.08.2008 14:30