Найти тему
Modul school

Решение задач на условный оператор на C++ (Си)

Задачи:

  1. На сковородку одновременно можно положить k блинов. Каждый блин нужно с каждой стороны обжаривать m минут непрерывно. За какое наименьшее время удастся поджарить с обеих сторон n блинов? Вводятся 3 числа: k, m и n.
  2. Даны три целых числа, записанных в отдельных строках. Определите, сколько среди них совпадающих.

Программа должна вывести одно из чисел: 3 (если все совпадают), 2 (если два совпадают) или 0 (если все числа различны).

3. По данному числу n закончите фразу "На лугу пасется..." одним из возможных продолжений: "n коров", "n корова", "n коровы", правильно склоняя слово "корова".

Пользователь вводит число n (n<100). Программа должна вывести введенное число n и одно из слов (на латинице): korov, korova или korovy, например, 1 korova, 2 korovy, 5 korov. Между числом и словом должен стоять ровно один пробел.

Решения:

1.

#include <stdio.h>
int main()
{
int k,m,n,t;
scanf("%d",&k);
scanf("%d",&m);
scanf("%d",&n);
if (n <= k) t = 2 * m;
else
{
t = (2*n/k)*m;
if (n%k != 0 && n%k != k/2) t += m;
}
printf("%d",t);
return 0;
}

2.

#include <stdio.h>
int main()
{
int a,b,c;
scanf("%d",&a);
scanf("%d",&b);
scanf("%d",&c);
if (a==b && a==c) printf("3\n");
else
if (a==b || a==c || b==c) printf ("2\n");
else printf("0\n");
return 0;
}
3.
#include <stdio.h>
int main()
{
int n;
scanf("%d",&n);
if (n % 10 == 1 && n != 11) printf("%d korova\n",n);
else
if (n % 10 <= 4 && n % 10>=2 && n / 10 != 1) printf("%d korovy\n",n);
else printf("%d korov\n",n);
return 0;
}