bagrjashv41
?>

С# для каждого натурального числа в промежутке от m до n вывести все делители, кроме единицы и самого числа. m и n вводятся с клавиатуры.

Информатика

Ответы

ustinovalubov6666

using System;

namespace ConsoleApp4

{

   class Program

   {

       static void PrintDivisors(int a)

       {

           Console.Write("делители для числа " + a.ToString() + "(исключая само число и 1): ");

           for (int i = 2; i <a; i++)

               if (a % i == 0)

                   Console.Write(i.ToString() + " ");

           Console.WriteLine("");

       }

       static void Main(string[] args)

       {

           Console.WriteLine("Введите m и n");

           int m, n;

           m = int.Parse(Console.ReadLine());

           n = int.Parse(Console.ReadLine());

           if (n < m)

               Console.WriteLine("Неверный ввод");

           else

               for(int i=m;i<=n;i++)

                   PrintDivisors(i);

           Console.ReadKey();

       }

   }

}

Natalimis416024
◘Объективность информации. Например: "На улице холодно" - это субъективная информация. А "На улице -14°" - объективная (но не всегда точная)
◘Достоверность информации. Ин-фа достоверна, если отражает истинное положение дел. (объективная информация всегда достоверна)
◘Полнота информации. Информация полная, если ее достаточно для понимания и принятия решения.
◘Точность информации. Определяется степенью ее близости к реальному состоянию объекта, процесса, явления и т.д.
◘Актуальность информации – важность для настоящего времени.
◘Полезность информации.
 - Самая ценная информация – объективная, достоверная, полная, и актуальная.
mg4954531175

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

 

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.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

С# для каждого натурального числа в промежутке от m до n вывести все делители, кроме единицы и самого числа. m и n вводятся с клавиатуры.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Aleksandr_Vasilev
Dmitrievich-Telishev
svo1961
Андреевнатест707
Chikichev456
Альберт Луиза1595
Nikolaevich824
Advantage9111
VSpivak3122
endyurans2ooo
generallor3
Александрович Алексеевна
textildlavas21
iuv61
ksyrika