Предмет: Информатика, автор: shchedrinaira

Дано шестизначное число. Переставить две средние цифры в начало числа. 123456 должно получится 341256 через паскаль

Ответы

Автор ответа: Аноним
0
Поскольку математических расчетов не производится, будем работать со строковым (символьным) представлением данных. Это как если бы мы взяли шесть квадратиков бумаги, написали бы на каждом цифру 1, 2, ...6, и составили бы из этих кусочков цепочку 1-2-3-4-5-6 . А потом сделали бы нужные перестановки.

var
  s:string;
begin
  Write('Введите натуральное шестизначное число: '); Readln(s);
  Writeln('Перестановка: ',s[3]+s[4]+s[1]+s[2]+s[5]+s[6])
end.

Тестовое решение:
Введите натуральное шестизначное число: 123456
Перестановка: 341256

Автор ответа: shchedrinaira
0
var x, i: integer;
begin
writeln('Введите шестизначное число: ');
readln(x);
i := x mod 10000;
writeln( i div 100 );
writeln( x div 10000 );
writeln( x mod 100 );
end.
Автор ответа: Аноним
0
И? Считаете, что Ваше решение проще? Начнем с ого, что оно вообще неработоспособно в таком виде: в типе integer максимальное значение не может превышать 32767 - Вы как собираетесь шестизначное число вводить? Ваши Writeln() будут выводить части числа на разных строках.
Автор ответа: Аноним
0
В общем, я понял: вместо "спасибо" мне написали кривое решение, типа, "вот, смотри как надо!" )))) К тому же, даже будучи исправленным, оно более длинное и более сложное для понимания. Поздравляю!
Похожие вопросы
Предмет: Қазақ тiлi, автор: belka112233