Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
1 / 1 / 1
Регистрация: 09.10.2014
Сообщений: 79
1

Введенная по getche строка стирается с экрана при выводе в cout

19.11.2016, 17:35. Показов 1855. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Когда ввожу число, то в консоли стирается запись об "Input a number: 123456" и показывается только "Output number: 123456". Как сохранить все записи? Что я делаю не так?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/*
Операция ввода, такие, как cin, должны уметь преобразовывать последовательность символов в число.
Напишите программу, которая позволяет пользователю ввести шесть цифр, а затем выводит результат
типа long на экране. Каждая цифра должна считываться отдельно при помощи функции getche().
Вычисление значений переменной производится путем умножения текущего ее значения на 10 и сложения
с последней введенной цифрой (для того, чтобы из кода символа получить цифру, вычтите из него
48 или '0'. Примером результата работы программы может служить следующий:
Введите число: 123456
Вы ввели число 123456
*/
 
#include <iostream>
#include <conio.h>
 
using namespace std;
 
void main()
{
    char ch = 'a';
    long number = 0;
    cout << "Input a number: ";
    while ((ch = _getche()) != '\r')
    {
        number = number * 10 + ch - 48;
    }
    cout << "Output number: " << number << endl;
}
1
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.11.2016, 17:35
Ответы с готовыми решениями:

Использование функции при выводе в cout
Объясните, пожалуйста, почему так выводит 1 0. int f(int&amp; a){ return ++a; } int main(){ int...

Нет пробелов при выводе в cout
В чем ошибка, почему нету пробелов когда выход проходит в cout? Помогите пожалуйста. #include...

Не работает перегрузка операторов при выводе в cout
написал свой класс ComplexNumber. перегрузил для него операторы +, -, *, /, &lt;&lt;. конструкции вида ...

При выводе COUT стирает первую букву
Проблема: при выводе информации о проданных машинах, первая буква названия первой (и только первой,...

2
Модератор
Эксперт С++
13507 / 10757 / 6412
Регистрация: 18.12.2011
Сообщений: 28,713
19.11.2016, 17:41 2
Простейшее решение:
C++
1
    cout << "\nOutput number: " << number << endl;
0
0 / 0 / 0
Регистрация: 10.08.2021
Сообщений: 2
01.11.2021, 16:38 3
Зачем нужно ch - 48?
0
01.11.2021, 16:38
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.11.2021, 16:38
Помогаю со студенческими работами здесь

Программа аврийно завершается при выводе в cout
Приветствую всех! Начал выполнять задание,связанное с расписанием поездов,но уже в самом начале...

При выводе в консоль std::cout - выдаёт кашу
Добрый вечер, столкнулся с проблемой, что при выводе в консоль к примеру: std::cout &lt;&lt; &quot;tmpFirst: &quot;...

При выводе посредством cout() получается один и тот же набор цифр
Здравствуйте дорогие форумчане. У меня трабл. В независимости от того что я подаю в cout, результат...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru