В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
gamemode89
gamemode89
20.01.2023 07:30 •  Информатика

Электроника и схематотехника 50р скину на счёт если за 5-6 мин решите

Показать ответ
Ответ:
see99aa
see99aa
18.03.2023 23:18

я сегодня добрый :) Первая задача.

 

var
  s, mn: set of integer;
  f: boolean;
  k, n, c, i, j, kol: integer;

begin
  writeln('Введите трехзначное число:');
  repeat readln(n) until n in [100..999]; // защита от "дурака"
  k := n;    // записываем число, чтобы вывести на результат
 
  while n <> 0 do
  begin           // пока число не станет равно нулю...
    c := n mod 10;   // последняя цифра числа
    include(s, c);   // вносим эту цифру в множество
    n := n div 10    // у числа отсекаем рассмотренную цифру
  end;
 
  for i := 100 to 999 do
  begin    // рассматриваем все трехзначные числа
    mn := s; j := i; f := true;  // все обнуляем
    while j <> 0 do
    begin    // пока рассматриваемое число не будет равно нулю
      c := j mod 10;    // последняя цифра числа
      if c in mn then exclude(mn, c) else f := false;    // если число во множестве, то убираем его оттуда, чтобы избежать повторений, иначе - не рассматриваем его.
      j := j div 10;    // у числа отсекаем рассмотренную цифру
    end;
    if f then begin inc(kol); write(i:6) end    // если проверка успешно, то выводим число на экран и прибавляем значение переменной-счетчика!
  end;
 
 
  writeln; writeln('Из ', k, ' можно составить ', kol, ' чисел!');   // выводим результат
  readln;
end.

 

А вот вторая, комменты к ней писать было уже лень:

 

var
  k, i, n, kol: integer;

begin
  writeln('Количество трехзначных чисел, которые вы далее введете?');
  repeat readln(k) until k in [1..10];
  for i := 1 to k do
  begin
    writeln('Введите ', i, ' трехзначное число:');
    repeat readln(n) until n in [100..999];
    while n <> 0 do
    begin
      if ((n mod 10) mod 2 = 0) then inc(kol);
      n := n div 10;
    end;
  end;
  writeln('Количество четных чисел = ',kol);
  readln  
end.

0,0(0 оценок)
Ответ:
jeviduwel
jeviduwel
20.05.2020 14:20

REM

SCREEN

LINE(80,280)-(100,180),6,B

LINE(100,260)-(120.240),6,B

LINE(120.240)-(140,220),6,B

LINE(140,280)-(160,180),6,B

LINE(180,280)-(200,180),6,B

LINE(200,200)-(220,180),6,B

LINE(220,220)-(240,200),6,B

LINE(200,240)-(220,220),6,B

LINE(260,280)-(260,180),6,B

LINE(260,260)-(280,240),6,B

LINE(280,240)-(300,220),6,B

LINE(300,280)-(320,180),6,B

LINE(320,280)-(340,180),6,B

LINE(360,240)-(380,220),6,B

LINE(380.280)-(400,180),6,B

LINE(440,280)-(440.200),6,B

LINE(440,240)-(460,220),6,B

LINE(460,280)-(480,200),6,B

 

 

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота