Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 5.00
MikeEl
1 / 1 / 0
Регистрация: 27.03.2012
Сообщений: 52
#1

Задача со Switch (Для целого числа k от 1 до 99 напечатать фразу "мне k лет») - C++

10.05.2013, 13:24. Просмотров 2569. Ответов 4
Метки нет (Все метки)

Для целого числа k от 1 до 99 напечатать фразу "мне k лет»,учитывая при этом, что при некоторых значениях k слово «лет» надозаменить словом «год» или «года». Предусмотреть ситуацию неправильноговвод исходных данных.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.05.2013, 13:24
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Задача со Switch (Для целого числа k от 1 до 99 напечатать фразу "мне k лет») (C++):

Вывести на экран фразу "Мне n лет", учитывая что при некоторых значениях n слово "лет" надо заменить на "год" - C++
дано натуральное число n. Вывести на экран фразу "Мне n лет", учитывая что при некоторых значениях n слово "лет" надо заменить на "год" или...

Для натурального числа К вывести фразу "К лет" - C++
Задача: Для натурального числа К<100 вывести фразу "К лет". Учесть, в зависимости от значения числа К, склоняется слово "лет" (1 год, 2...

Для натурального числа k напечатать фразу «мы нашли k грибов в лесу», согласовав окончание слова «гриб» с числом k - C++
Для натурального числа k напечатать фразу «мы нашли k грибов в лесу», согласовав окончание слова «гриб» с числом k .

Для целого числа найти и напечатать все простые множители в порядке их возрастания - C++
Для целого числа М найти и напечатать все простые множители в порядке их возрастания. Одинаковые множители печатать столько раз, сколько...

Для массива из 10 чисел проверить, есть ли в нем два одинаковых числа и напечатать "да" или "нет" - C++
void check_same(const int* a) { for (const int* p = a; p < a + 9; p++) for (const int* q = p+1; q < a + 10; q++) ...

Для введенного с клавиатуры n, вывести фразу вида: «Мне 41 год» - C++
Для введенного с клавиатуры n, вывести фразу вида: «Мне 41 год», «Мне 16 лет», «Мне 84 года»...... switch Не могу понять что дальше,...

4
Ден90
2 / 2 / 0
Регистрация: 19.11.2012
Сообщений: 55
10.05.2013, 14:35 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    for(int k = 0; k < 100; k++) {
        cout << "мне " << k << " ";
        switch (k % 10) { // остаток от деления
           case 1: cout << "год";
           break;
           case 2: cout << "года";
           break;
           case 3: cout << "года";
           break;
           case 4: cout << "года";
           break;
           default: cout << "лет";
        }
    }
}
Добавлено через 7 минут
упс)) не совсем понял что спрашивалось)))
для одного числа заменить цикл for на cin >> k;
както-так =))
0
DIEZEL-man
13 / 13 / 0
Регистрация: 17.02.2013
Сообщений: 54
10.05.2013, 14:39 #3
Сейчас попробую довести до нормального состояния
0
Ден90
2 / 2 / 0
Регистрация: 19.11.2012
Сообщений: 55
10.05.2013, 14:43 #4
Цитата Сообщение от DIEZEL-man Посмотреть сообщение
for(int j=5; j<100; j++){ if(vozr==j) cout<<j<<" let"<<endl;} }
при вводе vozr к примеру 21 выведет "let"
0
DIEZEL-man
13 / 13 / 0
Регистрация: 17.02.2013
Сообщений: 54
10.05.2013, 15:32 #5
Вот абсолютно рабочая программа:
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
#include<iostream>
#include<cmath>
using namespace std;
int main(){
 
int vozr;
cout<<"Vvedite vozrast ot 1 do 99:"<<endl;
cin>>vozr;
if(vozr>=1 && vozr<=99){
           
if(vozr==1) {cout<<"Mne "<<vozr<<" god"<<endl;}
for(int i=2; i<5; i++)
{if(vozr==i) cout<<"Mne "<<vozr<<" goda"<<endl;}
 
for(int i=5; i<21; i++)
{if(vozr==i) cout<<"Mne "<<vozr<<" let"<<endl;}
 
if(vozr>=21){ switch(vozr%10){
                case 1: cout<<"Mne "<<vozr<<" god"<<endl; break;
                case 2: cout<<"Mne "<<vozr<<" goda"<<endl; break;
                case 3: cout<<"Mne "<<vozr<<" goda"<<endl; break;
                case 4: cout<<"Mne "<<vozr<<" goda"<<endl; break;
                default: cout<<"Mne "<<vozr<<" let"<<endl;}}
                
           }
else cout<<"Oshibka, vozrast ne podhodit!"<<endl;
 
    
 system("pause");
 return 0;   
}
p/s если обнаружил ошибку напиши
1
10.05.2013, 15:32
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.05.2013, 15:32
Привет! Вот еще темы с ответами:

Для целого числа к от 1 до 99 напечатать фразу "мне к лет" - Turbo Pascal
Для целого числа к от 1 до 99 напечатать фразу &quot;мне к лет&quot; учитывая при этом что при некоторых занчениях &quot;к&quot; слово &quot;лет&quot; надо заменить на...

Для целого числа N от 20 до 25 напечатать фразу "Мне N лет" - PascalABC.NET
Для целого числа N от 20 до 25 напечатать фразу &quot;Мне N лет&quot;, учитывая при этом, что при некоторых значениях N слово &quot;лет&quot; надо заменить на...

Для целого числа k от 1 до 99 напечатать фразу: "мне k лет" - Pascal ABC
доброго часа. уже вконец сломав голову, прошу помощи в доработке задачи. условие: написать программу, которая для целого числа k...

Для целого положительного числа К от 1 до 99 напечатать фразу " Мне К лет" - Turbo Pascal
Для целого положительного числа К от 1 до 99 напечатать фразу &quot; Мне К лет&quot;, учитывая при этом, что при некоторых значениях К слово &quot;лет&quot;...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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