Всё просто. До из суммы вычитается загаданное число. Возьмите число 0 и сами всё поймёте
<span> // 1 гриб</span><span>
// 2-4 гриба</span><span>
// 5-10 грибов</span><span>
// 11-20 грибов исключение</span><span>
// 21 гриб</span><span>
// 22-24 гриба</span><span>
// 25-30 грибов</span><span>
// 31 гриб</span><span>
// 32-34 гриба</span><span>
// 35-40 грибов</span><span>
// 41 гриб</span><span>
// 42-44 гриба</span><span>
// 45-50 грибов</span><span>
// 51 гриб
как видим из вышеизложенного, мы должны только запрограммировать окончание первого десятка и исключение 11-20, которое будет портить нам малину, т.к. там одно окончание будет.
А остальное берем целочисленный остаток от деления на 10, и добавляем нужное окончание.</span><span />
Var a,b,c,x,a1,b1,c1:integer;
begin
writeln('Введите стоимость тетрадей');
readln(a1);
writeln('Введите кол-во тетрадей');
readln(a);
writeln(''Введите стоимость ручек');
readln(b1);
writeln('Введите кол-во ручек');
readln(b);
writeln('Введите стоимость карандашей');
readln(c1);
writeln('Введите кол-во карандашей');
readln(c);
x:=(a*a1)+(b*b1)+(c*c1);
writeln(x' руб.',);
end.
<span>186Кбайт = 186/1024=0,181640625Мбайт
</span><span>2Кбайта 11 байт = (2*1024+11)*8 = 16472бит
</span>66435 бит = 66435/8/1024=8,1097412109375Кбайт
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int number, coun = 0, d, first, last;
double pwr;
setlocale(LC_ALL, "Russian");
cout << "Поменять первую и последнюю цифры числа>" << endl;
cout << "Введите число: ";
cin >> number;
d = number;
while (d > 0)
{
d /= 10;
coun++;
cout << "count = " << coun << endl;
}
pwr = pow(10, coun-1);
//к примеру число равно 321
//first = 3
//last = 1
//number = 32
//number = 323
//number = 23
//number = 123
first = number / (int)pwr;
last = number % 10;
number /= 10;
number = number * 10 + first;
number %= int(pwr);
number += last * int(pwr);
cout << "Result: " << number << endl;
return 0;
}