Напишите программу,которая переставляет первую и последнюю цифры, введённого...

0 голосов
737 просмотров

Напишите программу,которая переставляет первую и последнюю цифры, введённого число,например,из числа 12345 должно получится 52341.


Pascal ABC.
Пожалуйста,с объяснением


Информатика (35 баллов) | 737 просмотров
0

А число любое? У нас для четырехзначных такая задача была просто, могу ее написать...

Дан 1 ответ
0 голосов
Правильный ответ

ДЛЯ ЧЕТЫРЕХЗНАЧНЫХ ЧИСЕЛ:

var x: integer; 
begin 
writeln ('Введите четырехзначное число.'); 
read (x); 
x:=x mod 10 * 1000 + x div 100 mod 10 * 100 + x div 10 mod 10 * 10 + x div 1000; 
writeln ('Число после перестановки цифр:',x); 
end.



ДЛЯ ЛЮБЫХ ЧИСЕЛ:

program znanija;
var n,m,c1,cp:integer;   
k,i:byte;
begin
write('Введите число.');
readln(n);{например 12345}
cp:=n mod 10;{последняя цифра=5}
n:=n div 10;{число без последней цифры=1234}
m:=n;{запомним его}
k:=0;
while m>9 do{пока не останется 1 цифра} 
begin 
m:=m div 10;{первая цифра=1} 
k:=k+1;{количество разрядов без первого=4} 
end;
c1:=m;{запомним первую цифру=1}
for i:=1 to k do 
begin 
m:=m*10;{повышаем разряд числа, равного первой цифре=1000} 
cp:=cp*10;{повышаем разряд последней цифры=5000} 
end;
n:=(n-m)*10+c1+cp*10;{получаем число=(1234-1000)*10+1+5000*10=52341}
writeln('Число после перестановки цифр:',n);
end.

(397 баллов)
0

Если не для какого - значит для любого.

0

Если не сказано для какого*

0

сейчас нормально?

0

Спасибо