|
Главная | Правила | Регистрация | Дневники | Справка | Пользователи | Календарь | Поиск | Сообщения за день | Все разделы прочитаны |
![]() |
|
Опции темы | Опции просмотра |
![]() |
#1 (permalink) |
Новичок
Регистрация: 21.12.2015
Сообщений: 2
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
![]() В диапазоне [M, N] найти число с максимальной суммой делителей. Турбо Паскаль. 2. Одномерный массив В массиве A(n) подсчитать количество минимальных элементов. Турбо Паскаль. Буду очень благодарен. |
![]() |
![]() |
![]() |
|
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Представлю вашему вниманию схожие с вашей темы Привет, помогите в написании программы TURBO PASCAL Помогите, пожалуйста, написать программу на Turbo Pascal |
![]() |
#2 (permalink) |
Member
Регистрация: 31.03.2010
Адрес: Тульская область
Сообщений: 1,309
Сказал(а) спасибо: 11
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 13090
|
![]()
№2.
Код:
var A:array[1..50] of integer; i,n,m,min:integer; begin Write('Razmer massiva <50 = '); Readln(n); Writeln; Writeln; Writeln('Massiv A:'); Writeln; Randomize; for i:=1 to n do begin A[i]:=Random(20); Write(A[i]:4); end; Writeln; Writeln; min:=A[1]; m:=1; for i:=2 to n do if A[i]<min then begin min:=A[i]; m:=1; end else if A[i]=min then Inc(m); Writeln('Min = ',min); Writeln('V massive min.elementov : ',m); Readln; end. |
![]() |
![]() |
![]() |
#3 (permalink) |
Member
Регистрация: 31.03.2010
Адрес: Тульская область
Сообщений: 1,309
Сказал(а) спасибо: 11
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 13090
|
![]()
№1 (если я правильно понял задание)
Код:
function Summ(ai:integer):integer; var j,k:integer; begin if ai=1 then Summ:=1 else begin k:=0; for j:=1 to ai do if (ai mod j)=0 then k:=k+j; Summ:=k; end; end; var n,m,i,sum,t,e:integer; begin Write('M = '); Readln(m); Write('N > M = '); Readln(n); Writeln; sum:=0; t:=0; for i:=m to n do begin e:=Summ(i); if e>sum then begin t:=i; sum:=e; end end; Writeln('Cislo = ',t); Writeln('Summa deliteley = ',sum); Readln; end. |
![]() |
![]() |
![]() |
#5 (permalink) |
Member
Регистрация: 31.03.2010
Адрес: Тульская область
Сообщений: 1,309
Сказал(а) спасибо: 11
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 13090
|
![]() Код:
function Summ(ai:integer):integer; var j,k:integer; begin if ai=1 {если заданное число 1, то у него один делитель} then Summ:=1 {значению функции присваивается 1} else {если не равно 1} begin k:=0; {обнуление суммы} for j:=1 to ai do {инициализация цикла до заданного числа} if (ai mod j)=0 then {если нет остатка при делении, то это делитель} k:=k+j; {суммирование делителей} Summ:=k; {значению функции присваивается сумма} end; end; var n,m,i,sum,t,e:integer; begin Write('M = '); Readln(m); {ввод первого значения диапазона} Write('N > M = '); Readln(n); {ввод второго значения диапазона} Writeln; sum:=0; t:=0; {обнуление наибольшей суммы делителей} for i:=m to n do {инициализация цикла перебора в диапазоне} begin e:=Summ(i); {вызов функции подсчёта суммы делителей очередного числа} if e>sum then {если значение функции больше наибольшей суммы то} begin t:=i; {запоминаем число} sum:=e; {запоминаем сумму} end end; Writeln('Cislo = ',t); Writeln('Summa deliteley = ',sum); Readln; end. |
![]() |
![]() |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
![]() |
Опции темы | |
Опции просмотра | |
|
|