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

Произведение четных чисел от 1 до 100
НУЖЕН КОД НА ЯЗЫКЕ VISUAL PROLOG

👇
Открыть все ответы
Ответ:
olik29
olik29
23.02.2020

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

 

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.

4,6(98 оценок)
Ответ:
aleksandrovadia1
aleksandrovadia1
23.02.2020
//PascalABC.NET 3.2 сборка 1318

Uses
  GraphABC;

Var
  h:integer;
begin
h:=40;
line(window.Width-300,window.Height,window.Width-300,0);
floodfill(window.Width-20,20,clGray);
rectangle(window.Width-200,100,window.Width-100,300);
floodfill(window.Width-150,140,clGold);
while h<>window.Height-40 do
  begin
    circle(window.Width div 2,h-40,10);
    floodfill(window.Width div 2,h-40,clGreen);
    circle(window.Width div 2,h,30);
    floodfill(window.Width div 2,h,clRed);
    rectangle(0,0,window.Width div 2+40,window.Height);
    floodfill(window.Width div 2+40,window.Height,clWhite);
    inc(h);
  end;
  circle(window.Width div 2,h-40,10);
  floodfill(window.Width div 2,h-40,clGreen);
  circle(window.Width div 2,h,30);
  floodfill(window.Width div 2,h,clRed);
end.
4,4(50 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ