#include <iostream>
using namespace std;
int main()
{
setlocale(LC_ALL, "Russian");
short int year[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
int month = 0, day = 0, daysUntilNewYear = 0;
while (month == 0)
{
cout << "Введите месяц: ";
cin >> month;
if (month < 1 || month > 12)
{
month = 0;
cout << "В году лишь 12 месяцев, повторите ввод" << endl;
}
}
while (day == 0)
{
cout << "Введите день: ";
cin >> day;
if (day > year[month - 1] || day < 1)
{
day = 0;
cout << "В выбранном месяце " << year[month - 1] << " дней, повторите ввод" << endl;
}
}
for (int i = month - 1; i < 12; i++)
{
daysUntilNewYear += year[i];
}
daysUntilNewYear -= day - 1;
cout << "До Нового Года осталось " << daysUntilNewYear << " дней"<< endl;
system("pause");
return 0;
}
Если через case делать, то будет больше кода и он будет менее понятен - смысла в этом нет, поэтому сделал через while.
a, b, c, d: real;
begin
write('Введите коэффициенты a,b,c ');
readln(a, b, c);
d := sqr(b) - 4 * a * c;
if d = 0 then
writeln('Корень один x = ', (-b / (2 * a))
else if d >0 then
writeln('x1 = ',(-b + sqrt(d)) / (2 * a), ' x2 = ',(-b - sqrt(d)) / (2 * a))
else writeln('Действительных корней нет');
end.
Тест №1
Введите коэффициенты a,b,c 1 -5 6
x1 = 3 x2 = 2
Тест №2
Введите коэффициенты a,b,c 1 2 3
Действительных корней нет
Тест №3
Введите коэффициенты a,b,c 1 0 0
Корень один x = 0