artashhovhan
?>

C. инверсия 0 имя входного файла стандартный ввод имя выходного файла стандартный вывод ограничение по времени 2 секунды ограничение по памяти 64 мегабайта необходимо реализовать функцию, которая для заданного целого числа меняет порядок цифр в нем на обратный. продемонстрировать работу процедуры на 5 целых числах. формат входных данных с клавиатуры вводятся через пробел 5 целых положительных чисел, не превосходящих 109. формат выходных данных необходимо вывести через пробел 5 чисел — измененные исходные числа. примечания если у нового числа есть ведущие нули — выводить их не нужно. примеры входные данные выходные данные 31 1 294 421 1122 13 1 492 124 2211

Информатика

Ответы

info6
Алгоритм решения

Для каждого числа будем убирать последнюю цифру, пока число не станет нулём. При этом для очередной последней цифры ответ умножаем на 10 и прибавляем к нему эту цифру.

Для одного числа алгоритм будет выглядеть так:

while x > 0:

   ans = ans * 10 + (x mod 10)

   x = x // 10

Где x - заданное число, ans - ответ на задачу (перевёрнутое число), mod - операция получения остатка, // - операция целочисленного деления.

Формально, x mod 10 возвращает последнюю цифру числа x ("остаток от деления x на 10"), а x // 10 возвращает число x без последней цифры ("разделить x на 10 и отбросить остаток").


Решение (Pascal)

var

 x, i, ans: integer;


begin

 for i := 1 to 5 do

 begin

   read(x);

   ans := 0;

   while (x > 0) do

   begin

     ans := ans * 10 + (x mod 10);

     x := x div 10;

   end;

   write(ans, ' ');

 end;

 writeln;

end.

Файл решения прикреплён.

Петренко1852

Задача 1:

var a,b: real;

var c: char;

begin

write('Введите a: ');

readln(a);

write('Введите b: ');

readln(b);

write('Введите нужную операцию (+,-,*,/): ');

readln(c);

if (c='+') then writeln('Результат: ',a+b)

else if (c='-') then writeln('Результат: ',a-b)

else if (c='*') then writeln('Результат: ',a*b)

else if (c='/') then writeln('Результат: ',a/b);

end.

Задача 2:

var a: integer;

begin

write('Введите количество кроликов: ');

readln(a);

write('Количество морковок: ',3*100+a*2);

end.

Задача 3:

var a: integer;

begin

write('Введите число: ');

readln(a);

write('Последняя цифра числа: ',a mod 10);

end.

novdodCT

Задача 1:

var a,b: real;

var c: char;

begin

write('Введите a: ');

readln(a);

write('Введите b: ');

readln(b);

write('Введите нужную операцию (+,-,*,/): ');

readln(c);

if (c='+') then writeln('Результат: ',a+b)

else if (c='-') then writeln('Результат: ',a-b)

else if (c='*') then writeln('Результат: ',a*b)

else if (c='/') then writeln('Результат: ',a/b);

end.

Задача 2:

var a: integer;

begin

write('Введите количество кроликов: ');

readln(a);

write('Количество морковок: ',3*100+a*2);

end.

Задача 3:

var a: integer;

begin

write('Введите число: ');

readln(a);

write('Последняя цифра числа: ',a mod 10);

end.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

C. инверсия 0 имя входного файла стандартный ввод имя выходного файла стандартный вывод ограничение по времени 2 секунды ограничение по памяти 64 мегабайта необходимо реализовать функцию, которая для заданного целого числа меняет порядок цифр в нем на обратный. продемонстрировать работу процедуры на 5 целых числах. формат входных данных с клавиатуры вводятся через пробел 5 целых положительных чисел, не превосходящих 109. формат выходных данных необходимо вывести через пробел 5 чисел — измененные исходные числа. примечания если у нового числа есть ведущие нули — выводить их не нужно. примеры входные данные выходные данные 31 1 294 421 1122 13 1 492 124 2211
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Валерьевна1601
stendpost
Lebedeva1577
adminaa
elena-ruzadom
olesya-cat8601
gelena03
iraira761
zu87zu87
grenysherg2873
zrv85
hr2251
Носов Тоноян
Николаевна_Анна670
lebedev815