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

Вводятся два числа - если первое число положительное и при этом второе число отрицательное - Вывести 'ДА'. В противном случае вывести "НЕТ".

👇
Открыть все ответы
Ответ:
olik29
olik29
05.03.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 оценок)
Ответ:
вой7
вой7
05.03.2020
Программа поиска элемента в произвольном массиве:
const n=10;
var a:array[1..n+1] of integer;
p,i:integer;
begin
Randomize;
writeln('Исходный массив:');
for i:=1 to n do
 begin
 a[i]:=random(21);
 write(a[i]:4);
 end;
writeln;
write('p = '); readln(p);
a[n+1]:=p;
i:=1;
while a[i]<>p do i:=i+1;
if i<=n
 then writeln('Искомый элемент найден, его номер = ',i)
 else writeln('Искомый элемент не найден');
end.

Пример 1:
Исходный массив:
   7  17  16  13   0   1  19  20  12   5
p = 13
Искомый элемент найден, его номер = 4

Пример 2:
Исходный массив:
  20   4   5  12  14  10  11  16  18  20
p = 15
Искомый элемент не найден
4,4(28 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ