profile
Опубликовано 6 лет назад по предмету Информатика от Varvara144

помогите пожалуйста решить задачу:
напишите программу, которая в последовательности целых чисел определяет количество чисел, кратных 5 или 9.Программа получает на вход целые числа,количество введённых чисел неизвестно, последовательность чисел заканчивается числом (0 - признак окончания ввода,не входит в последовательность). Количество чисел не превышает 1000. Введенные числа не превышает 30000. Программа должна вывести одно число:количество чисел, кратных 5 или 9.
помогите пожалуйста!!!
(это надо решить Паскалем)​

  1. Ответ
    Ответ дан SmEgDm

    var

     k5, k9, k45, k, i, x: integer;

    begin

     k5 := 0; k9 := 0; k45 := 0;

     while True do

     begin

       readln(x);

       if x = 0 then

         break;

       if (x mod 5 = 0) and (x mod 9 <> 0) then

         k5 += 1;

       if (x mod 5 <> 0) and (x mod 9 = 0) then

         k9 += 1;

       if x mod 45 = 0 then

         k45 += 1;

     end;

     k := k5+k9-k45;

     write(k)

    end.

    1. Ответ
      Ответ дан ingr
      программа не работает, не определяет 0 как признак конца ввода
    2. Ответ
      Ответ дан SmEgDm
      Исправил
    3. Ответ
      Ответ дан ingr
      теперь ты забыл объявить n, дает ошибку "Неизвестное имя 'n'"
    4. Ответ
      Ответ дан SmEgDm
      Можно было и самому это подправить...
    5. Ответ
      Ответ дан ingr
      как ты мне предлагаешь править чужие ответы???
  2. Ответ
    Ответ дан ingr

    var

       a, n, i : integer;

       

    begin

       repeat

           read(a);

           if (a <= 30000) and (a <> 0) then begin

               if (a mod 5 = 0) or (a mod 9 = 0) then n += 1;

               i += 1;

           end;

       until (a = 0) or (i = 1000);

       writeln(n);

    end.

Самые новые вопросы