Другие языки программирования и технологии

информатика паскаль.

вводится с клавиатуры число на экран должно выводиться число наоборот то-есть если я ввожу 1234 то должно выйти 4321 как это сделать?
Доброго времени суток.

Вариантов решения масса. Если нужно только вывести в обратном порядке, то IIyCTou уже сказал как. Но можно еще проще, без второй переменной.

var
s : String;
i : Integer;
begin
ReadLn(s);
for i:=Length(s) downto 1 do Write(s[ i ]);
WriteLn;
readln;
end.

А еще можно выделять цифры числа с помощью операторов mod и div и формировать новое число. Все зависит от поставленной задачи. К сожалению, из того, что вы сказали, это не ясно. Поэтому простое лобовое решение - вывод строковой переменной от последнего до первого символа.

Удачи!
Олег Валуев
Олег Валуев
59 613
Лучший ответ
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if Key='1' then Key := '4';
end;
//это пример на дельфи для размышления упрощенно - нажимаешь 1 вводит 4
БС
Бауыржан С
49 504
Вот две готовые проги, которые переворачивает строку / число.

Здесь работа с текстом:
Program Mine;
uses crt;
var S:string;
function MirrorStr(Str:string):string;
var i:integer;
buf:string;
begin
buf:='';
if Str<>'' then
For i:=length(Str) downto 1 do
buf:=buf+Str;
MirrorStr:=buf;
end;
begin
clrscr;
write( ' Vvedite stroku -> ');
readln(S);
writeln(' Zerkal`no -> ',MirrorStr(S));
readkey;
end.

А здесь работа с числами:
Program Mine;
uses crt;
var n,a,x,s,k:longint;
begin
clrscr;
writeln (' Vvedite luboe naturalnoe chislo');
readln (n);
a:=n;
x:=0;
while a>=10 do
begin
a:=a div 10;
x:=x+1;
end;
while x>=0 do
begin
K:=(n mod 10)*round(exp(x*ln(10)));
S:=S+K;
n:=n div 10;
x:=x-1;
end;
writeln (S);
readln
end.

Надеюсь, мои проги хоть чем-то помогли!
Удачи!
Самый простой вариант
var
s,z:string;
i:integer;
begin
readln(s);
z:='';
for i:=1 to length(s) do
z:=s [ i ]+z;
write(z);
readln;
полистай информатику 10 класса ...месяц назад эта тема была, лень конспект перерывать
надо такую программу написать