Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
parkito
11 / 11 / 2
Регистрация: 22.03.2010
Сообщений: 691
#1

Преобразование в число - C++

22.06.2011, 19:18. Просмотров 522. Ответов 8
Метки нет (Все метки)

Подскажите как решить данную задачу ?

Преобразование в число

Вот эа программа у меня не работает вообще, хотя должна быть идеально решеной.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
using namespace std;
#include <conio.h>
int main()
    {
    char ch;
    unsigned long total =0;      
    cout <<"\nВведите число:";
    while((ch=getche())!='\r ' ))
    total =total*10 +ch-'0';     
    cout <<"\nПолучилось число:" <<total <<endl;
    return 0;
    }
 Комментарий модератора 
Прикрепляйте картинки к сообщениям.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.06.2011, 19:18     Преобразование в число
Посмотрите здесь:

Преобразование из строки в число - C++
только начала программировать на С. то есть, буквально только что открыла 10й Билдер))) такой вопрос: есть ли в С Билдере функция...

Преобразование строки в число - C++
какой аналог есть в c++ на strtoint inttostr?

Преобразование строки в число - C++
Имеется переменная строкового типа string. У нее такой формат: 1561 1 6.87208 4.52665 0.10226 2.16762 Нужно написать такую функцию,...

Преобразование даты в число C++ - C++
Добрый день! Имеется таблица с данными, в одной колонке даты в формате dd.mm.yyyy, а в другой колонке целые числа. по этим данным в...

Преобразование строки в число - C++
Здравствуйте. Преобразовываю строку в число с помощью функции atoi(), но есть одна проблема: int number; ...

Преобразование строки в число - C++
Есть строка с цифрами разделенная точкой с запятой: 1, 2, 3 string s = &quot;1, 2, 3&quot;; Как мне из этой строки достать по очереди все цифры и...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
sandye51
программист С++
681 / 583 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
22.06.2011, 19:32     Преобразование в число #2
Цитата Сообщение от parkito Посмотреть сообщение
'\r '
можкт быть?
C++
1
'\n'
no0ker
101 / 88 / 4
Регистрация: 17.12.2010
Сообщений: 416
22.06.2011, 20:00     Преобразование в число #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
using namespace std;
#include <conio.h>
int main()
    {
    char ch;
    unsigned long total =0;
    cout <<"\nВведите число:";
     while(
            (ch=getche() )!=13
          )
   {
        total *= 10;
        total += ch - '0';
 
    }
 
    cout <<"\nПолучилось число:" <<total <<endl;
    return 0;
    }

Не по теме:

правда, можно ли мешать в одной программе getche() и std::cout?

у меня работает даже если проверять с '\r'. а 0x0D - это код символа возврата каретки.

походу ТС просто напутал со скобками =))

schdub
2940 / 1284 / 238
Регистрация: 19.01.2009
Сообщений: 3,357
Завершенные тесты: 1
23.06.2011, 13:20     Преобразование в число #4
Цитата Сообщение от no0ker Посмотреть сообщение
правда, можно ли мешать в одной программе getche() и std::cout?
no0ker,
Syntax
#include <conio.h>
int getche(void);

Description
Gets character from the keyboard, echoes to screen.
getche reads a single character from the keyboard and echoes it to the current text window using direct video or BIOS.

Note: Do not use this function for Win32s or Win32 GUI applications.

Return Value

getche returns the character read from the keyboard.
Добавлено через 6 минут
Кстати, нет защиты "от дурака". Что если пользователь введет, например, символ 'Ё' или любой другой не входящий в ['0';'9'] ?
no0ker
101 / 88 / 4
Регистрация: 17.12.2010
Сообщений: 416
23.06.2011, 20:14     Преобразование в число #5
Кстати, нет защиты "от дурака"
эээ... думал вот этого достаточно =)
C++
1
cout <<"\nВведите число:";

Не по теме:

инструкции ведь достаточно четкие(ну прямо как в том фильме - "не давать еды после полуночи и не мочить")

silent_1991
23.06.2011, 20:18
  #6

Не по теме:

no0ker, это не защита от дурака, это инструкции умному))) Дурак как раз-таки не следует инструкциям))

no0ker
101 / 88 / 4
Регистрация: 17.12.2010
Сообщений: 416
23.06.2011, 20:20     Преобразование в число #7
Note: Do not use this function for Win32s or Win32 GUI applications.
правильно ли я понимаю - что нельзя использовать getche() в win3.1 и 3.11, и в оконных приложениях windows( и действительно, как там её использовать? =) )
а при чем тут std::cout<<?
schdub
2940 / 1284 / 238
Регистрация: 19.01.2009
Сообщений: 3,357
Завершенные тесты: 1
23.06.2011, 21:19     Преобразование в число #8
Цитата Сообщение от no0ker Посмотреть сообщение
правильно ли я понимаю - что нельзя использовать getche() в win3.1 и 3.11, и в оконных приложениях windows( и действительно, как там её использовать? =) )
под Win32s понимается все 32-х битные версии венды.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.06.2011, 16:08     Преобразование в число
Еще ссылки по теме:

Преобразование строки в число - C++
задача : реализовать деление двух целых чисел, передаваемых функции в виде строк Всем добрый вечер. Прошу ваших советов и подсказок....

Преобразование строки в число? - C++
Написал функцию, которая введенную преобразует в число. Но при выводе пишет, что она хранит не введенное число, а 0. В чем я ошибся? ...

Преобразование массива в число - C++
Имеется массив типа int нефиксированного размера, он генерируется внутри в результате работы кода. Мне нужно как-то превратить его в...

преобразование в число последовательности - C++
напишите программу преобразования в число последовательности символов-цифр, вводимых с клавиатуры, размещенных в массиве из 12 элементов,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
no0ker
101 / 88 / 4
Регистрация: 17.12.2010
Сообщений: 416
24.06.2011, 16:08     Преобразование в число #9
schdub, не понял. у меня вин хр. функцию getche() нельзя использовать? у меня всё работает и компилируется.
Yandex
Объявления
24.06.2011, 16:08     Преобразование в число
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru