Vivdarkbloom, к сожалению, нашел сумму всех чисел от 2 до n, а не число с максимальной суммой делителей. надо было так, пишу на visual basic sub command1_click() rem программа запускается по нажатию кнопки command1 на форме dim n as integer, summa as integer, max as integer dim maxn as integer, i as integer, k as integer n = text1.text ' это текстовое поле на форме, куда вводится n max = 1: maxn = 1 for i = 2 to n summa = 0 for k = 1 to i if i mod k = 0 then summa = summa + k ' если k - делитель i, то прибавляем next k if summa > max then ' если сумма больше максимальной max = summa ' сохраняем сумму maxn = i ' и сохраняем число i. end if next i text2.text = maxn ' это второе текстовое поле, куда выводится результат end sub
Program natur; uses crt; var a, summa, n : integer; begin clrscr; write('n='); readln(n); {цикл с предусловием} a: =2; summa: =0; while a< =n do begin summa: = summa + a; a : = a + 1 end; writeln (' результат первого суммирования: ' , summa) ; {цикл с постусловием} а: =1; summa: =0; repeat summa: =summa+ а; а: =а+1 until a> n; writeln (' результат второго суммирования: ' , summa) ; {цикл с параметром} summa: =0; for а : = 2 to n do summa : =summa + a; writeln (' результат третьего суммирования: ', summa); end
Спасибо
Ответ дал: Гость
program a1; const n=20; var c: array [1..100] of integer; var i,k: integer; begink: =0; for i: =1 to n do beginc[i]: =random(101)-50; {заполнение массива произвольно от -50 до 50}write(' ',c[i]); {вывод массива на экран}end; for i: =2 to n doif c[i]< c[i-1] then k: =k+1; {сравнение элемента с предыдущим и счет элементов которые меньше}writeln; writeln('количество элементов=',k); end.
Ответ дал: Гость
картинка длжна быть в папке с программой и быть в формате bmp
usesgraphabc;
varn: string; b: picture; s: integer;
beginwriteln('введите расстояние до зеркала'); readln(s); write('введите имя файла рисунка: '); readln(n); window.clear; b : = picture.create(n); b.load(n); b.draw(50, 50); b.fliphorizontal; b.draw(50+2*s,50); end.
Популярные вопросы