Программирование
материал для подготовки к егэ (гиа) по информатике и икт (11 класс)
Обработка целочисленной информации. Оптимизация
Скачать:
Вложение | Размер |
---|---|
seminar_11_marta_2.pptx | 77.69 КБ |
Предварительный просмотр:
Подписи к слайдам:
Условие задачи Пусть M — сумма минимального и максимального натуральных делителей целого числа, не считая единицы и самого числа. Если таких делителей у числа нет, то считаем значение M равным нулю. Напишите программу, которая перебирает целые числа, большие 220000, в порядке возрастания и ищет среди них такие, для которых значение M оканчивается на 4. Вывести первые 5 найденных чисел и соответствующие им значения M. Формат вывода: для каждого из 5 таких найденных чисел в отдельной строке сначала выводится само число, затем — значение М. Строки выводятся в порядке возрастания найденных чисел.
Код программы ( PascalABC ) v ar M, mind, maxd , d, i: integer; Begin k := 1; i := 220001; while k <= 5 do begin M := 0; min d := 0; maxd := 0; for d := 2 to round( sqrt ( i )) do if i mod d = 0 then begin mind := d; maxd := i div d; break; end; M := maxd + mind; if M mod 10 = 4 then begin k := k + 1; writeln ( i , ‘ ‘, M); end; e nd; i := i + 1; e nd.
Код программы ( Python) k = 1 f or i in range (220001, 220100) for d in range(2, int ( i ** 0,5)) if i % d == 0: M = d + i // d break if M % 10 == 4: k +=1 if k <=5: print( i , M) Ответ: 220004 110004 220023 73344 220024 110014 220033 20014
Условие задачи Назовём нетривиальным делителем натурального числа его делитель, не равный единице и самому числу. Найдите все натуральные числа, принадлежащие отрезку [525784203; 728943762] и имеющие ровно три нетривиальных делителя. Для каждого найденного числа запишите в ответе само число и его наибольший нетривиальный делитель. Найденные числа расположите в порядке возрастания .
Код программы ( PascalABC ) var i , j : longint ; k , t : integer; a: array[1..3] of longint ; begin for i:=123456789 to 223456790 do begin k:=0; a[1]:=0; a[2]:=0; a[3]:=0; if round( sqrt ( i ))= sqrt ( i ) then begin a[2]:=round( sqrt ( i )); for j:=2 to round( sqrt ( i )-1) do if i mod j = 0 then begin k:=k+1; t:=j ; end; if k = 1 then begin a[1]:=t; a[3]:= i div t; end; if (a[1] <> 2) and (a[2] <> 0) and(a[3] <> 0) then writeln ( i , ' ',a[1],' ', a[2],' ', a[3]); end; end; end . Ответ: 131079601 107 11449 1225043 141158161 109 11881 1295029 163047361 113 12769 1442897
Код программы ( Python) a=[] import math for i in range(525784203, 728943762): b = [] if int ( sqrt ( i )) == sqrt ( i ) : b.append ( sqrt ( i )) else: continue for j in range(2, int ( sqrt ( i ))): if i % j == 0: b.append (j) b.append ( i //j) if len (b) > 3: break if len (b) == 3: a.append ([max(b)]) print( i ) print(a) Ответ: 607573201 705911761 [[3869893], [4330747]]
По теме: методические разработки, презентации и конспекты
Тематическое планирование по курсу «Основы алгоритмизации и программирования» в среде программирования VBA
Тематическое планирование по курсу «Основы алгоритмизации и программирования» в среде программирования VBA Основы алгоритмизации и программирование1,2(4 час)Повт. Программное об...
Практические задания по МДК "Системное программирование" для специальности "Программирование в компьютерных систем""
ПРАКТИЧЕСКИЕ ЗАДАНИЯ ДЛЯ МДК «Системное программирование» ...
УЧЕБНО-МЕТОДИЧЕСКОЕ ПОСОБИЕ По дисциплине «Основы программирования» Для специальности 230115 «Программирование в компьютерных системах»
УЧЕБНО-МЕТОДИЧЕСКОЕ ПОСОБИЕ По дисциплине «Основы программирования»...
УЧЕБНО-МЕТОДИЧЕСКОЕ ПОСОБИЕ По дисциплине «Основы программирования» Для специальности 230115 «Программирование в компьютерных системах»
УЧЕБНО-МЕТОДИЧЕСКОЕ ПОСОБИЕ По дисциплине «Основы программирования»...
Основы программирования: ТЕМА 01. ЯЗЫК ПРОГРАММИРОВАНИЯ ПАСКАЛЬ.
ОСНОВЫ ПРОГРАММИРОВАНИЯВВЕДЕНИЕОдним из популярных сегодня ЯП является Паскаль. Он позволяет составлять программы для решения математических задач, обработки текстов, построения изображений на экране ...
Место динамического программирования в подготовке школьников к олимпиадам по программированию
Задачи на применение идей динамического программирования – частое явление на олимпиадах по программированию, поэтому одним из важных шагов подготовки учащихся к успешному выступлению на олимпиаде по п...
Программирование. Начало программирование на языке Pascal
Материал разработан и опубликован для московского проекта единая общегородская образовательная платформа...