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

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

Войти
Регистрация
Восстановить пароль
 
wankstahamsta
0 / 0 / 0
Регистрация: 12.02.2013
Сообщений: 45
#1

Получить число по введенным с клавиатуры цифрам - C++

12.02.2013, 19:44. Просмотров 575. Ответов 9
Метки нет (Все метки)

Есть такая задачка:
Разработать программу, которая формирует число по введенным с клавиатуры цифрам, трактуемым как число сотен, десятков и единиц.

какими операторами пользоваться даже не знаю, вообще ничего.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.02.2013, 19:44
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Получить число по введенным с клавиатуры цифрам (C++):

По введенным с клавиатуры вещественным значениям переменных x, y, z вычислить - C++
Вот 12 вариант

Дано натуральное число, проанализировать чет\нечет по цифрам - C++
Дано натуральное число. а) Верно ли, что оно заканчивается нечетной цифрой? б) Верно ли, что оно заканчивается четной цифрой? В обеих...

Нужно из массива удалить элементы с номером, введенным с клавиатуры - C++
все перепробовал, не могу понять. сделал на удаление элемента, введенного с клавиатуры. а нужно номер элемента. #include <stdio.h> ...

Как создать файл с именем введенным с клавиатуры. нужна помощь. - C++
Всем доброго времени суток. В общем проблема в следующем: Нужно чтобы консольное приложение после ввода с клавиатуры переменной name ,...

Из предложения удалить все символы, совпадающие с символом, введенным с клавиатуры - C++
Из предложения удалить все символы, совпадающие с символом, введенным с клавиатуры. (использовать функции) #include <iostream> ...

Определить количество слов в тексте, совпадающих с введенным с клавиатуры словом - C++
здравствуйте, помогите составить программу для этой задачи. Определить количество слов в тексте, совпадающих с введенным с клавиатуры...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
ya_noob
_
201 / 145 / 9
Регистрация: 08.10.2011
Сообщений: 432
12.02.2013, 19:51 #2
C++
1
2
3
4
5
6
7
8
9
10
11
char d;
int result = 0;
 
cin >> d; // вводим сотни
result = result * 10 + ( d - '0' );
 
cin >> d; // вводим десятки
result = result * 10 + ( d - '0' );
 
cin >> d; // вводим единицы
result = result * 10 + ( d - '0' );
принцип ясен?
wankstahamsta
0 / 0 / 0
Регистрация: 12.02.2013
Сообщений: 45
12.02.2013, 20:04  [ТС] #3
Не ясен.
почему result вместо переменных, это моя первая программа, нельзя ли сделать как-нибудь попроще?
Что означает оператор char?
ya_noob
_
201 / 145 / 9
Регистрация: 08.10.2011
Сообщений: 432
13.02.2013, 07:02 #4
Цитата Сообщение от wankstahamsta Посмотреть сообщение
почему result вместо переменных... Что означает оператор char?
Ого, это серьезно!
Ну тогда так:
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
#include <iostream>
using namespace std;
 
int main()
{
    int result = 0;
    int x;
 
    cout << "Vvedi kol-vo soten: ";
    cin >> x;
    result = x * 100;
 
    cout << "Vvedi kol-vo desyatkov: ";
    cin >> x;
    result = result + x * 10;
 
    cout << "Vvedi kol-vo edinic: ";
    cin >> x;
    result = result + x;
 
    cout << "Ty vvel chislo: " << result << endl;
 
    return 0;
}
MrGrig
176 / 159 / 2
Регистрация: 08.10.2012
Сообщений: 422
13.02.2013, 08:45 #5
Цитата Сообщение от wankstahamsta Посмотреть сообщение
Не ясен.
почему result вместо переменных, это моя первая программа, нельзя ли сделать как-нибудь попроще?
Что означает оператор char?
char это не оператор а инициализируемый тип данных. Компилятор выделит определенное количество памяти для данной переменной/массива. Если не ошибаюсь, хранит в себе последовательность байтов, которые при выводе определяются компилятором как символы. переменная/ячейка типа char, может хранить в себе лишь 1 символ
SatanaXIII
Супер-модератор
Эксперт С++
5609 / 2643 / 244
Регистрация: 01.11.2011
Сообщений: 6,502
Завершенные тесты: 1
13.02.2013, 09:49 #6
Цитата Сообщение от MrGrig Посмотреть сообщение
char это не оператор а инициализируемый тип данных.
Ну если подойти философски, то char это все же в первую очередь оператор, организующий память в структуру (для char - 1 байт), которая должна будет в дальнейшем всеми механизмами программы интерпретироваться как символ.
Или даже не так. char - это тип данных, а char ch; это оператор над ch.
iama
1250 / 975 / 49
Регистрация: 30.07.2010
Сообщений: 5,297
13.02.2013, 09:51 #7
SatanaXIII, что за глупости. Ваш ход мыслей понятен, но такое понимание мало того, что ничем не полезно для программиста, так и совсем не согласуется с каноническими определениями в Си.
SatanaXIII
Супер-модератор
Эксперт С++
5609 / 2643 / 244
Регистрация: 01.11.2011
Сообщений: 6,502
Завершенные тесты: 1
13.02.2013, 10:06 #8
iama, я соглашусь, что начинающему программисту лучше прочитать в толковой книжке что такое тип данных, а не получать эти знания, прошедшие через интерпретатор моей больной головы.
Но отстаивая порожденные мной глупости скажу, что оператор это ведь наименьшая неделимая часть языка. Так? Какую-либо функцию можно расковырять и понять из чего, из каких операторов она состоит, оператор расковырять не получится. По крайней мере уже не средствами языка. Так вот команду, слово (не знаю, какой-нибудь синоним надо подобрать) для выделения памяти под статическую переменную нельзя назвать оператором? Это можно еще проще как-то представить?
Есть вот совсем канонический оператор присваивания. Он так и называется "оператор присваивания". А в данном контексте по такой аналогии слово "char" можно рассмотреть как "оператор отождествления куска памяти со своим конкретным символьным именем".
P.S. Не кидайтесь в меня тапками, я просто рассуждаю.
silent_1991
Эксперт С++
4963 / 3039 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
14.02.2013, 14:00 #9
SatanaXIII, вы путаете два понятия: оператор (операция, operation) и инструкция (statement). Оператор присваивания - это operation. Объявление переменной в общем виде - statement. Хотя объявление в С/С++ обычно выделяют в отдельную единицы. Но только всё объявление можно назвать statement, нельзя сказать, что char (type) - это operation над идентификатором. Не стоит рассуждать о терминологии, о ней уже порассуждали куча наших переводчиков, в результате чего два совершенно разных английских слова - statement и operation - стали называть одним русским - оператор.
SatanaXIII
Супер-модератор
Эксперт С++
5609 / 2643 / 244
Регистрация: 01.11.2011
Сообщений: 6,502
Завершенные тесты: 1
14.02.2013, 16:49 #10
silent_1991, ага! А вот без попытки таких дурацких рассуждений еще бы не скоро я пришел к осознанию разницы. Слава изобретателям велосипедов!
Вот нашел поподробнее почитать. Может кого заинтересует
Слово "statement" принято переводить на русский язык как "оператор". Мы привыкли к тому, что if, while, case и т. д. - это операторы. Увы, в контексте C++ такой перевод неприемлем. Дело в том, что в C++ слово "operator" (которое и переведено как "оператор") имеет совсем другое значение. Оно применяется для обозначения сложения (оператор +), разыменования (оператор *), выяснения размера (оператор sizeof()) и в других подобных случаях. С учетом того, что большинство операторов C++ допускает перегрузку, синтаксически и семантически напоминающую (пере)определение функций, можно сказать, что операторы в C++ сродни функциям. Кстати, автор употребляет также и термин "operation" (так и переведенный: "операция"), который в C++ не имеет какого-то специального смысла и в большинстве случаев может рассматриваться или как синоним слова "оператор", или как обозначение какого-то действия. Что же касается термина "statement", то из предлагаемых различными словарями вариантов "утверждение", "предложение" и "инструкция" мы избрали последний, так как он, по-видимому, лучше всего соответствует сущности обозначаемых словом "statement" конструкций C++ и, кроме того, периодически встречается в книгах и документации в нужном значении. Итак, if, while, case,... - это инструкции, а +, -, sizeof - операторы. В частности, = - это оператор присваивания, семантику которого можно изменить путем перегрузки, а вот запись а = 6; является инструкцией присваивания, семантика которой неизменна, фиксирована языком и состоит в вызове (возможно перегруженного) оператора присваивания с аргументами.

Не по теме:

Нашел еще для сравнения описание этих же терминов для Явы и для Ады. В принципе все тоже самое. Во всех языках проблема с путаницей в переводе этих терминов. И во всех языках, они обладают одинаковыми значениями.

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.02.2013, 16:49
Привет! Вот еще темы с ответами:

Создать функцию, вычисляющую по трём введенным с клавиатуры вещественным числам заданное выражение - C++
Помогите пожалуйста создать функцию : По введенным с клавиатуры вещественным значениям переменных x, y, z вычислить f(x, y, z) * f(1, 0,...

По введенным с клавиатуры номеру месяца и дня определить, сколько дней осталось до Нового Года - C++
Здравствуйте!Написал программу, но как то коряво получилось помогите пожалуйста привести к удобоваримому виду. Задание: Напишите...

Задача на обработку символьных данных (сравнить строку введенным с клавиатуры, и вывести результат сравнение - C++
Здравствуйте. Задача на обработку символьных данных такая: Сравнить строки,введенные пользователем с клавиатуры, и вывести результаты...

Натуральное число называется автоморфным, если оно равно последним цифрам своего квадрата. Например, 25 2 = 62 - C++
Натуральное число называется автоморфным, если оно равно последним цифрам своего квадрата. Например, 25 2 = 625. Напишите программу,...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
14.02.2013, 16:49
Ответ Создать тему
Опции темы

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