М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
MrGowno
MrGowno
19.11.2021 05:45 •  Информатика

2. дано четырехзначное число. найти число, полученное перестановкой второй и третьей цифры заданного числа. (например, 4567 > 4657)

👇
Ответ:
AelitaFox
AelitaFox
19.11.2021
Традиционное решение:
var
  n,d1,d2,d3,d4:integer;
begin
  Write('Введите четырехзначное натуральное число: ');
  Readln(n);
  d1:=n div 1000; d4:=n mod 10;
  d3:=(n mod 100) div 10;
  d2:=(n mod 1000) div 100;
  n:=1000*d1+100*d3+10*d2+d4;
  Writeln('Результат: ',n)
end.

Тестовое решение:
Введите четырехзначное натуральное число: 4567
Результат: 4657

Решение с использованием символьного представления числа:
var
  s:string;
begin
  Write('Введите четырехзначное натуральное число: ');
  Readln(s);
  Writeln('Результат: ',s[1]+s[3]+s[2]+s[4])
end.
4,7(62 оценок)
Ответ:
sasharaiskaja
sasharaiskaja
19.11.2021
Var
  n: integer;
  t, t1: string[4];
begin
  writeln('введите число --> ');
  read(n);
  Str(n,t);
  t1 := t[1] + t[3] + t[2] + t[4];
  writeln('ответ ', t, ' --> ', t1)
end.
4,8(88 оценок)
Открыть все ответы
Ответ:
Фёкла11
Фёкла11
19.11.2021
USES CRT,Graph;VAR Device,Mode:Integer;    i,x,y,s:Integer;BEGINCLRSCR;       Device:=0;       InitGraph(Device,Mode,'');       s:=100;       x:=320;       y:=240;       for i:=1 to 9 do           begin               SetLineStyle(0,0,ThickWidth);               Circle(x,y,s);               Delay(200);               SetColor(Black);               Circle(x,y,s);               s:=s-10;               SetColor(White);           end;            for i:=1 to 9 do           begin               SetLineStyle(0,0,ThickWidth);               Circle(x,y,s);               Delay(200);               SetColor(Black);               Circle(x,y,s);               s:=s+10;               SetColor(White);           end;          Circle(x,y,s);Readln;END.
4,8(40 оценок)
Ответ:
НИкитос1757
НИкитос1757
19.11.2021
Логическая операция ⊕ - это "исключающее ИЛИ" (xor в языках Паскаль, Бейсик и т.д.), а → операция присваивания.
Тогда a⊕b→a; a⊕b→b; a⊕b→a - это был обмен значениями a ↔ b
Теперь по этой же схеме обменяем местами b и с:
b⊕c→b; b⊕c→с; b⊕c→b.
Результат: b→a; c→b; a→c

Программа для иллюстрации:
// PascalABC.NET 3.1, сборка 1218 от 12.04.2016
begin
  var a:=50;
  var b:=-20;
  var c:=0;
  Println('Исходные значения: a=',a,'b=',b,'c=',c);
  a:=a xor b; b:=a xor b; a:=a xor b;
  b:=b xor c; c:=b xor c; b:=b xor c;
  Println('Результат обмена: a=',a,'b=',b,'c=',c)
end.

Результат:
Исходные значения: a= 50 b= -20 c= 0
Результат обмена: a= -20 b= 0 c= 50
4,7(23 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ