Объесните Плиз Готовый Код Программы

Тема в разделе "C/C++/C#", создана пользователем ivan1994, 3 ноя 2011.

  1. ivan1994

    ivan1994 Member

    Регистрация:
    31 окт 2011
    Сообщения:
    15
    Симпатии:
    0
    помогите поставьте плиз коментарии в программе напротив строк . :please:

    Код (Text):
    #include <iostream>
    #include <stdlib>
    using namespace std;

    char *itos(int, char *, int);

    int main(){
    char *s = new char[100];
    int num, radix;

    cout << "num: "; cin >> num;
    cout << "radix: "; cin >> radix;

    cout << "itoa: " << itoa(num, s, radix) << endl;
    cout << "itos: " << itos(num, s, radix) << endl;

    delete [] s;
    system("pause");
    return 0;
    }

    char *itos(int num, char *s, int radix){
    int c = 0;
    while (num != 0){
    int t = num % radix;
    num = num / radix;
    if (t < 10) s[c] = (char)(t + '0');
    else s[c] = (char)('a' - 10 + t);
    c++;
    }
    for (int i = 0; i < c / 2; i++) swap(s[i], s[c - i - 1]);
    return s;
    }
     
  2. coolplayer

    coolplayer Гость

    Странное задание, наваял немного:

    Код (Text):
    #include <iostream>
    #include <stdlib>
    using namespace std; // подключение пространства имен std

    char *itos(int, char *, int); // прототип функции itos, содержащей 3 аргумента

    int main(){
    char *s = new char[100]; // задание переменной символьного типа. New дает команду дать компилятору свободное место для хранения данных. * - указатель
    int num, radix; // объявление двух переменных целого типа

    cout << "num: "; cin >> num; // вывод переменной num
    cout << "radix: "; cin >> radix; // вывод переменной radix

    cout << "itoa: " << itoa(num, s, radix) << endl; // вывод результата применения функции itoa. Она у вас нигде не задается. Тут ошибка.
    cout << "itos: " << itos(num, s, radix) << endl; // вывод результата применения функции itos с переменными в скобках.

    delete [] s; // высвобождение памяти, занятой переменной s
    system("pause");
    return 0; // функция main возвращает 0, функции по умолчанию должны что то возвращать
    }

    char *itos(int num, char *s, int radix){
    int c = 0;
    while (num != 0){ //пока переменная num не равна 0 выполнять
    int t = num % radix; // t - остаток от деления num на radix
    num = num / radix; // num - целая часть от деления
    if (t < 10) s[c] = (char)(t + '0');
    else s[c] = (char)('a' - 10 + t);
    c++;
    }
    for (int i = 0; i < c / 2; i++) swap(s[i], s[c - i - 1]);
    return s;
    }
     
  3. Stashevckiy

    Stashevckiy Well-Known Member

    Регистрация:
    23 окт 2011
    Сообщения:
    56
    Симпатии:
    0
    Здесь нет ошибки. itoa - это стандартная функция C++. Все тут в порядке.
     
  4. ivan1994

    ivan1994 Member

    Регистрация:
    31 окт 2011
    Сообщения:
    15
    Симпатии:
    0
    так уже не надо было я понимаю задания функций переменных вывад ввод и т.д а вот
    Код (C++):
    itoa
    незнаю.

    плиз что здесь??
    Код (C++):
    if (t < 10) s[c] = (char)(t + '0');
    else s[c] = (char)('a' - 10 + t);
    c++;
    }
    for (int i = 0; i < c / 2; i++) swap(s[i], s[c - i - 1]);
    return s;
    }

    вобщем задание на кортинке мне нужно 10-тое.
    я думал разобрать код и зделать но никак....



    Добавлено: [​IMG]

    Добавлено: [​IMG]
     
Загрузка...
Похожие Темы - Объесните Плиз Готовый
  1. rulic
    Ответов:
    5
    Просмотров:
    1.289
  2. Jora
    Ответов:
    4
    Просмотров:
    1.498
  3. krank
    Ответов:
    1
    Просмотров:
    1.211
  4. Gandliar
    Ответов:
    0
    Просмотров:
    1.686
  5. AvasKvas
    Ответов:
    30
    Просмотров:
    9.419

Поделиться этой страницей