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

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

Войти
Регистрация
Восстановить пароль
 
Джин-ТоНиК
0 / 0 / 0
Регистрация: 05.10.2012
Сообщений: 11
#1

Обработка введенного символа. Итерационные циклы - C++

20.10.2012, 17:15. Просмотров 361. Ответов 4
Метки нет (Все метки)

Ребят...кто сможет помогите с задачами....По условию нужно:
1) Считать два символа и выдавать на экран сообщение, код какого из них больше.
2) Дано натуральное число n. Найти разность между первой цифрой этого числа и суммой всех остальных.
Заранее благодарю за помощь.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.10.2012, 17:15
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Обработка введенного символа. Итерационные циклы (C++):

Обработка числовой информации. Итерационные алгоритмы. Циклы - C++
цели лабы 1) Организация циклов различной структуры. 2) Организация вложенных циклов. 3) Выделение отдельных цифр данного числа. Их...

Итерационные циклы - C++
Помогите решить задачку на итерацию в С++ Просто на завтра нужно сдать)) плс

итерационные циклы - C++
void main() {setlocale(LC_ALL,"Russian");const float eps=0.001f;float x; float y=x-1,y0,xn;int n=2; cout<<"Введите x:"; cin>>x; ...

Итерационные циклы - C++
Доброй ночи Помогите найти ошибки, скорее всего в функциях. общее задание: ЛАБОРАТОРНАЯ РАБОТА № 3 РЕАЛИЗАЦИЯ ИТЕРАЦИОННЫХ ЦИКЛОВ...

итерационные процессы и циклы в Visual Studio - C++
Написать функцию вычисления суммы ряда для заданного аргумента с точностью 4 знака после запятой. Результат выдать в виде таблицы,...

Итерационные циклы,Определение и вызов функций,Использование библиотечных функций stdio.h - C++
Помогите решить задания: 1.Дано натуральное число n. Найти разность между первой цифрой этого числа и суммой всех остальных. ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
filkloch
9 / 9 / 1
Регистрация: 28.02.2011
Сообщений: 45
20.10.2012, 19:13 #2
Ну первое, если я правильно понял задание, то так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
using namespace std;
int main(int argc, char** argv) {
    char a;
    char b;
    cout << "Первое символ:";
    cin >> a;
    cout << "Второй символ:";
    cin >> b;
    if (a > b)
        cout << "Код ASCII первого числа больше" << endl;
    else
        if (b > a)
            cout << "Код ASCII второго числа больше" << endl;
        else
            cout << "Коды ASCII символов равны" << endl;
    return 0;
}
Добавлено через 39 минут
На второе я бы написал так:
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
28
29
30
31
32
33
34
35
36
37
38
39
#include <iostream>
#include <sstream>
 
using namespace std;
 
int main(int argc, char** argv) {
    int n = 9234;// Входное число
    
    stringstream ss_buf;
    stringstream ss_a_buf;
    stringstream ss_b_buf;
    
    //Инициализируем уменьшаемое первой цыфрой
    int a;
    ss_buf << n;
    ss_a_buf << ss_buf.str()[0];
    ss_a_buf >> a;
 
    //Создаём и инициализируем масив содержащий все остальные цифры
    int b_array[ss_buf.str().size() - 1];
    for (int i = 1; i < ss_buf.str().size(); i++) {
        ss_b_buf << ss_buf.str()[i];
        ss_b_buf >> b_array[i - 1];
        ss_b_buf.clear();
        cout << b_array[i - 1] << endl;
    }
    
    //Вычисляем сумму всех массива
    int b = 0;
    for (int i = 0; i < ss_buf.str().size()-1; i++)
        b = b + b_array[i];
    
    //Результат
    int result = a-b;
    
    cout << "Result:" << result << endl;
    
    return 0;
}
Джин-ТоНиК
0 / 0 / 0
Регистрация: 05.10.2012
Сообщений: 11
20.10.2012, 20:06  [ТС] #3
Спасибо большое:-)
Но вот второе задание слишком замудренные, первый раз такое вижу
stringstream ss_buf;
stringstream ss_a_buf;
stringstream ss_b_buf;

//Инициализируем уменьшаемое первой цыфрой
int a;
ss_buf << n;
ss_a_buf << ss_buf.str()[0];
ss_a_buf >> a;

//Создаём и инициализируем масив содержащий все остальные цифры
int b_array[ss_buf.str().size() - 1];
for (int i = 1; i < ss_buf.str().size(); i++) {
ss_b_buf << ss_buf.str()[i];
ss_b_buf >> b_array[i - 1];
ss_b_buf.clear();
cout << b_array[i - 1] << endl;
}
filkloch
9 / 9 / 1
Регистрация: 28.02.2011
Сообщений: 45
20.10.2012, 20:44 #4
Входное число задано как int, а в программе надо оперировать с отдельными цифрами числа. Чтобы скопировать первую цифру входного числа n в переменную a, нужны такие мудрёные строчки:
Цитата Сообщение от filkloch Посмотреть сообщение
int a;
ss_buf << n;
ss_a_buf << ss_buf.str()[0];
ss_a_buf >> a;
Ну а тут:
Цитата Сообщение от filkloch Посмотреть сообщение
//Создаём и инициализируем масив содержащий все остальные цифры
int b_array[ss_buf.str().size() - 1];
for (int i = 1; i < ss_buf.str().size(); i++) {
ss_b_buf << ss_buf.str()[i];
ss_b_buf >> b_array[i - 1];
ss_b_buf.clear();
cout << b_array[i - 1] << endl; }
просто создаётся массив int (в конкретном случае из 3-х элементов) и заполняется оставшиемися цифрами(в конкретном случае:b_array[0] = 2; b_array[1] = 3; b_array[3] = 4). P.S Для того что бы потом легко их было сложить.
Джин-ТоНиК
0 / 0 / 0
Регистрация: 05.10.2012
Сообщений: 11
20.10.2012, 22:25  [ТС] #5
Спасибо огромное за помощь:-)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.10.2012, 22:25
Привет! Вот еще темы с ответами:

Функция проверки введенного символа - C++
Здравствуйте помогите написать функцию которая будет проверять правильный символ т.е чтобы если пользователь написал буквы или...

Определить тип введенного символа - C++
Напишите программу, в которой пользователь должен ввести 1 символ. По окончанию программа должна вывести, является ли этот символ буквой,...

написать программу перевода введенного символа - C++
написать программу перевода введенного символа от a до f в верхний регистр, а другие символы заменять на Z

Удаление из строки символа, введенного пользователем - C++
Нужен код чтобы программа удаляла из строки символ, введенный пользователем и результат выводила на экран. Всем...


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

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

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