Предмет: Информатика,
автор: tommylee1999
Помогите решить задачу. Поменять местами первую и последнюю цифру натурального числа. решение в паскале. Тема while, repeat. Подробно, понятно пжлст
Ответы
Автор ответа:
0
var n,m,k1,k2,p:integer;
begin
write('n = '); readln(n);
k1:=n mod 10; //последняя цифра
k2:=n; p:=1;
while k2>9 do
begin
k2:=k2 div 10; // первая цифра
p:=p*10; // нужная степень числа 10
end;
m:=k1*p+(n mod p - k1)+k2;
writeln('m = ',m);
end.
Пример:
n = 326901574
m = 426901573
begin
write('n = '); readln(n);
k1:=n mod 10; //последняя цифра
k2:=n; p:=1;
while k2>9 do
begin
k2:=k2 div 10; // первая цифра
p:=p*10; // нужная степень числа 10
end;
m:=k1*p+(n mod p - k1)+k2;
writeln('m = ',m);
end.
Пример:
n = 326901574
m = 426901573
tommylee1999:
Все так, Спасибо большое. Только вы переменную p забыли написать в идентификатор
Переменная p описана. Смотрите внимательнее.
var n,m,k1,k2,p:integer;
Извиняюсь
(http://znanija.com/task/17789999) если есть желание, можно еще одну задачу решить?
А сами не пробовали?
пробовал, без успешно, всю программу почти сделал, не могу разобраться в произведении
Похожие вопросы
Предмет: Математика,
автор: niuzalievemmnuil
Предмет: Українська мова,
автор: oleksandrkoreckij436
Предмет: Алгебра,
автор: aigerimargimbaeva36
Предмет: Английский язык,
автор: Аноним
Предмет: Русский язык,
автор: Mart500