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

Вывести в 10 столбиков все шестизначные числа которые деляться без остатка на сумму квадратов своих цифр

👇
Ответ:
221451
221451
15.03.2020
{
Вывести в 10 столбиков все шестизначные числа которые деляться без остатка на сумму квадратов своих цифр
}

program p1;

var
  fx: integer;// счетчик всех 6-ти значных чисел
  i, j, k: byte;// счетчики
  ax, bx: integer;// вычисления
  sum: integer;// сумма квадратов цифр числа

begin
 
  k := 1;// столбики
  for fx := 100000 to 999999 do
  begin
    sum := 0; //сумма квадратов
    for j := 6 downto 1 do
    begin
      ax := 1;
      for i := 1 to j - 1 do
        ax := 10 * ax;
      
      bx := (fx div ax) mod 10; //вычленение отдельных цифр
      bx := bx * bx; //квадрат цифры
      
      sum := sum + bx;
    end;
    
    if (fx div sum) = (fx / sum) then
      if (k < 11) then begin
        write(fx, ' ');
        k := k + 1;
      end else begin
        writeln;
        k := 1;
      end;
  end;  
 
end.

Вывести в 10 столбиков все шестизначные числа которые деляться без остатка на сумму квадратов своих
4,7(69 оценок)
Открыть все ответы
Ответ:
kristinarepina
kristinarepina
15.03.2020
Program ZAD00; {} uses crt;
var a,b:array[1..20] of real;
i:integer;
mina,minb,s:real;
Begin
{ заполнение массива А}
for i:=1 to 7 do begin write('введите элементы a[',i,']='); read(a[i]); end;
{ заполнение массива B}
for i:=1 to 9 do begin write('введите элементы b[',i,']='); read(b[i]); end;
{ min в массиве А}
mina:=a[1];
for i:=1 to 7 do begin
a[8]:= 32767 ;
if (a[i]>= a[i+1]) and (a[i+1]<=mina) then mina:=a[i+1]  end;
{ min в массиве B}
minb:=b[1];
for i:=1 to 9 do begin
b[10]:=32767;
if (b[i]>= b[i+1]) and (b[i+1]<=minb) then minb:=b[i+1]  end;
{ сложение minA и minB}
s:=mina+minb;
{ вывод результатов на экран
for i:=1 to 7 do begin write(a[i],' '); writeln; end;
for i:=1 to 9 do begin write(b[i],' '); writeln; end;
writeln('minA=',mina);
writeln('minB=',minb);
writeln('сумма их s=', s);
End.
4,6(7 оценок)
Ответ:
annmalik98
annmalik98
15.03.2020
Не трудно, но не полностью условие выполнено. Лови решение:

program arrs;
var
a : array[1..26] of integer;
i, min, max : integer;
m1, m2 : byte;

begin
randomize;
for i:=1 to 26 do begin
a[i] := random(29)-15;
write(a[i], ' ');
end;
min := 15;
max := -20;
for i:=1 to 26 do begin
if a[i] < min then begin
min:=a[i];
m1 := i;
end;
if a[i] > max then begin
max:=a[i];
m2 := i;
end;
end;
writeln;
writeln('Минимальный элемент в ячейке ', m1, ' равен ', min);
writeln('Максимальный элемент в ячейке ', m2, ' равен ', max);
end.

тестовый прогон:

0 2 -1 2 -9 -13 -9 -5 0 -14 11 6 8 -11 13 3 -15 -6 -15 -14 -3 13 9 7 3 -4
Минимальный элемент в ячейке 17 равен -15
Максимальный элемент в ячейке 15 равен 13
4,5(76 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ