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

Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 59, средняя оценка - 4.93
Bagatareyka
8 / 8 / 1
Регистрация: 21.11.2011
Сообщений: 10
21.11.2011, 18:11     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста #1
Ввести возраст человека (от 1 до 150 лет) и вывести его вместе с последующим словом «год», «года» или «лет»
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.11.2011, 18:11     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста
Посмотрите здесь:

C++ Вывести на экран 1 или 0 в зависимости от того, есть ли среди первых трех цифр дробной части заданного положительного вещественного числа цифра ноль
C++ Из введенного текста вывести самое короткое слово
C++ Для введенного с клавиатуры n, вывести фразу вида: «Мне 41 год»
C++ Дать для заданного числа наименования «год», «года», или «лет»
C++ Вывести на экран сообщение в зависимости от введенного значения оценки (по десятибалльной системе)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
LEQADA
Мастер кустарных методов
 Аватар для LEQADA
227 / 222 / 9
Регистрация: 09.11.2010
Сообщений: 680
21.11.2011, 18:29     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста #2
Если число оканчивается на 1, то "год". Если на 2,3,4, то "года". Если на 0,5,6,7,8,9, то "лет". Вроде так.
Bagatareyka
8 / 8 / 1
Регистрация: 21.11.2011
Сообщений: 10
21.11.2011, 18:43  [ТС]     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста #3
Цитата Сообщение от LEQADA Посмотреть сообщение
Если число оканчивается на 1, то "год". Если на 2,3,4, то "года". Если на 0,5,6,7,8,9, то "лет". Вроде так.
хотя бы начало напишите плииз...
LEQADA
Мастер кустарных методов
 Аватар для LEQADA
227 / 222 / 9
Регистрация: 09.11.2010
Сообщений: 680
21.11.2011, 18:44     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
 
int main() {
    setlocale(LC_ALL,"Russian");
    int year, t1, t2;
    std::cin>>year;
    t1 = year % 10;
    t2 = year % 100;
    if(t1 == 1 && t2 != 11){std::cout<<year<<" год";}
    if(t1 >= 2 && t1 <= 4 && (t2 < 10 || t2 >= 20)){std::cout<<year<<" года";}
    else {std::cout<<year<<" лет";}
}
Bagatareyka
8 / 8 / 1
Регистрация: 21.11.2011
Сообщений: 10
21.11.2011, 18:46  [ТС]     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста #5
мне просто си надо,
через #include <stdio.h>
#include <conio.h>
LEQADA
Мастер кустарных методов
 Аватар для LEQADA
227 / 222 / 9
Регистрация: 09.11.2010
Сообщений: 680
21.11.2011, 18:52     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста #6
Не знаю как на С в консоли отображать кириллицу... )
C
1
2
3
4
5
6
7
8
9
10
11
#include <stdio.h>
#include <conio.h>
int main(void) {
    int year, t1, t2 ,i=0;
    scanf("%d",&year);
    t1 = year % 10;
    t2 = year % 100;
    if(t1 == 1 && t2 != 11) {printf("%d god",year);i++;}
    if(t1 >= 2 && t1 <= 4 && (t2 < 10 || t2 >= 20)) {printf("%d goda",year);i++;}
    if(i==0) {printf("%d let",year);}
}
Mister_Trololo
0 / 0 / 0
Регистрация: 23.10.2011
Сообщений: 3
21.11.2011, 18:55     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста #7
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
#include <iostream>
 
using namespace std;
 
int main()
{
    int age;
    cout << "Enter age: ";
    cin >> age;
 
    if(age < 151 && age > 0)
    {
        int num = age % 10;
        if(num == 1)
        {
            cout << age << " god" << endl;
        }
        else if(num < 5 && num > 1)
        {
            cout << age << " goda" << endl;
        }
        else
        {
            cout << age << " let" << endl;
        }
        
    }
    else
    {
        cout << "Invalid age " << endl;
    }
}
Добавлено через 27 секунд
Упс, не заметил что надо на C
LEQADA
Мастер кустарных методов
 Аватар для LEQADA
227 / 222 / 9
Регистрация: 09.11.2010
Сообщений: 680
21.11.2011, 19:02     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста #8
Mister_Trololo, Ввод:14
Вывод : 14 goda
У вас ошибка в алгоритме.
mc.Duck
Заблокирован
21.11.2011, 19:16     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста #9
Bagatareyka, вот 100% рабочий код на си:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <clocale>
using namespace std;
 
 int main(void)
 {
     setlocale(LC_ALL,"Russian");           //âêëþ÷Г*ГҐГ¬ ðóññêóþ êèðèëëèöó
     
     int age=0;
     while(true)
     {
     cout<<"Âåäèòå âîçðГ*Г±ГІ: ";cin>>age;
     int n_age=age % 10;
     
     if(age<=20 && age>=10) {cout<<"Г‚Г*Г¬ "<<age<<" ëåò"<<endl; n_age=-1;}
     
     if(n_age==1) cout<<"Г‚Г*Г¬ "<<age<<" ãîä"<<endl;
     if(n_age==2 || n_age==3 || n_age==4) cout<<"Г‚Г*Г¬ "<<age<<" ãîäГ*"<<endl; 
     if(n_age==0 || n_age==5 || n_age==6 || n_age==7 || n_age==8 || n_age==9) cout<<"Г‚Г*Г¬ "<<age<<" ëåò"<<endl; 
     }
cin.get();
system("Pause");
 }
Добавлено через 59 секунд
LEQADA, это вы ошиблись! Если 12 - то "года", если 42 - то "года")))
LEQADA
Мастер кустарных методов
 Аватар для LEQADA
227 / 222 / 9
Регистрация: 09.11.2010
Сообщений: 680
21.11.2011, 19:18     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста #10
Цитата Сообщение от mc.Duck Посмотреть сообщение
вот 100% рабочий код на си:
Это на C++ ))

Добавлено через 59 секунд
Вы в моём коде ошибку нашли? Прошу Вводимые и выводимые данные в студию.
mc.Duck
Заблокирован
21.11.2011, 19:22     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста #11
LEQADA, прошу прощения, но я в языке си не особо мастер))) Что в моем коде не соответствует стандарту языка си?

Добавлено через 36 секунд
Ошибка не в вашем коде, а в описании задания)
LEQADA
Мастер кустарных методов
 Аватар для LEQADA
227 / 222 / 9
Регистрация: 09.11.2010
Сообщений: 680
21.11.2011, 19:24     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста #12
Цитата Сообщение от mc.Duck Посмотреть сообщение
Что в моем коде не соответствует стандарту языка си?
Ввод и вывод осуществляется немного иначе. Ещё определение кириллицы так работать не будет. Код просто не скомпилируется...)

Цитата Сообщение от mc.Duck Посмотреть сообщение
Ошибка не в вашем коде, а в описании задания)
Ошибка у меня и в описании и в коде, который на C++. А в коде на C я всё исправил. Всё работает. Вроде ))
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
21.11.2011, 20:09     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста #13
Цитата Сообщение от mc.Duck Посмотреть сообщение
Что в моем коде не соответствует стандарту языка си?
В вашем коде используются ключевые слова, понятия, заголовочные файлы языка С++. Кроме того, используются библиотечные объекты. Стоит ли ещё о чём-либо говорить?
Bagatareyka
8 / 8 / 1
Регистрация: 21.11.2011
Сообщений: 10
21.11.2011, 20:15  [ТС]     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста #14
короче всем спасибо....но я уже сама...=)
если что то
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
#include <stdio.h>
#include <conio.h>
main()
{
      int x;
      printf ("Ââåäèòå ñâîé âîçðГ*Г±ГІ\n");
      scanf ("%d", &x );
      if (x == 5 || x == 6) {
      printf ("Г‚Г*Г¬ %d ëåò", x); }
      else; 
      if (x == 7 || x == 8) { 
      printf ("Г‚Г*Г¬ %d ëåò", x); }
      else; 
      if (x == 9 || x == 10) { 
      printf ("Г‚Г*Г¬ %d ëåò", x); } 
      else; 
      if (x == 11 || x == 12)  {
      printf ("Г‚Г*Г¬ %d ëåò", x); } 
      else;
      if (x == 13 || x == 14) {
      printf ("Г‚Г*Г¬ %d ëåò", x);}
      else;
      if (x == 15 || x == 16) {
      printf ("Г‚Г*Г¬ %d ëåò", x);}
      else;
      if (x == 17 || x == 18) {
      printf ("Г‚Г*Г¬ %d ëåò", x);}
LEQADA
Мастер кустарных методов
 Аватар для LEQADA
227 / 222 / 9
Регистрация: 09.11.2010
Сообщений: 680
21.11.2011, 20:15     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста #15
Bagatareyka, убииилиии )))))
И так до 150 вводить будете ?
mc.Duck
Заблокирован
21.11.2011, 20:21     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста #16
Bagatareyka, ах) кошмар, у меня аж мурашки...ну ничего, человек, слава богу живет не дольше 130 лет, так, что, горизонт уже виднеется....
Bagatareyka
8 / 8 / 1
Регистрация: 21.11.2011
Сообщений: 10
21.11.2011, 20:30  [ТС]     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста #17
вот это не ко мне....дело в том нас так учитель заставил ( я в 8 классе)
LEQADA
Мастер кустарных методов
 Аватар для LEQADA
227 / 222 / 9
Регистрация: 09.11.2010
Сообщений: 680
21.11.2011, 20:32     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста #18
Bagatareyka, чем вам мой код на С не понравился? Ваш код неверный. Он не удовлетворяет условиям поставленной задачи.
mc.Duck
Заблокирован
21.11.2011, 20:34     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста #19
Bagatareyka, я тоже и что дальше? Возраст - это не отговорка! Скажи учителю, что он дуб)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.11.2011, 22:10     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста
Еще ссылки по теме:

C++ В зависимости от возраста вывести на экран возрастную категорию
Составить программу которая при введеном количестве лет выдает сообщени вам n лет,вам n год или года C++
C++ Вывести приветствие в зависимости от введенного времени

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

Или воспользуйтесь поиском по форуму:
Bagatareyka
8 / 8 / 1
Регистрация: 21.11.2011
Сообщений: 10
21.11.2011, 22:10  [ТС]     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста #20
короче вот правельный настоящий код...долго конечно нубила...=(
всем спс
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
#include <conio.h>
main()
{
      int x, z, y;
      printf ("Введите свой возраст\n");
      scanf ("%d", &x);
      z=10;
      y=100;
      if(x%z==1 && x!=11 && x!=111) {
      printf("Вам %d год", x);
      }
      else {
      if(x%z>1 && x%z<5 && x!=12 && x!=13 && x!=14){
      printf("Вам %d года", x);
      }
      else {
      if(x%z>4 || x%z==0 && x>=11 && x<=20 && x>=111 && x >=120);{
      printf("Вам %d лет", x);
      }}}
      getch();}
Yandex
Объявления
21.11.2011, 22:10     Вывести на экран слово «год», «года» или «лет» в зависимости от введенного возраста
Ответ Создать тему
Опции темы

Текущее время: 08:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru