«Осенний фестиваль знаний 2024»

"Определение результатов работы простейших алгоритмов" (подготовка к КЕГЭ 2024 - задание 6)

Олимпиады: Информатика 1 - 11 классы

Содержимое разработки

КЕГЭ’2024  № 6   Определение результатов работы простейших алгоритмов Крюкова Наталья Юрьевна МОУ Ликино-Дулёвский лицей

КЕГЭ’2024 № 6 Определение результатов работы простейших алгоритмов

Крюкова Наталья Юрьевна

МОУ Ликино-Дулёвский лицей

Что проверяется Определение возможных результатов работы простейших алгоритмов управления исполнителями и вычислительных алгоритмов Что необходимо знать:

Что проверяется

Определение возможных результатов работы простейших алгоритмов управления исполнителями и вычислительных алгоритмов

Что необходимо знать:

  • Формулы для вычисления суммы арифметической прогрессии
  • Формулы для вычисления расстояния между двумя точками по их координатам
  • Формулы для вычисления площади различных фигур
  • Базовую геометрию
  • Формулу Пика
  • Что сумма внутренних углов правильного многоугольника с n сторонами равна (n-2)*180
Что нужно контролировать Импорт библиотеки (from turtle import*) Установить направление – по умолчанию черепашка смотрит вправо (вдоль оси абсцисс). В заданиях же обычно черепашка смотрит вверх (вдоль оси ординат). Необходимо написать перед основным алгоритмом команду – lt(90) Следить за состоянием хвоста – обычно в задачах хвост опущен, также как и в Python по умолчанию – up() или down() Масштаб – черепашка рисует по пикселям. Рассмотреть целочисленные точки без увеличения нереально. Поэтому необходимо увеличивать масштаб, умножая все перемещения на одинаковый коэффициент. После чего вывести эти точки в окне, также перемещая черепашку на этот коэффициент. Например, если черепашка движется на 90 вперед, затем поворачивается направо на 90 градусов и проходит еще на 20 вперед, то: k=30 fd(90*k) lt(90) fd(2*k)

Что нужно контролировать

  • Импорт библиотеки (from turtle import*)
  • Установить направление – по умолчанию черепашка смотрит вправо (вдоль оси абсцисс). В заданиях же обычно черепашка смотрит вверх (вдоль оси ординат). Необходимо написать перед основным алгоритмом команду – lt(90)
  • Следить за состоянием хвоста – обычно в задачах хвост опущен, также как и в Python по умолчанию – up() или down()
  • Масштаб – черепашка рисует по пикселям. Рассмотреть целочисленные точки без увеличения нереально. Поэтому необходимо увеличивать масштаб, умножая все перемещения на одинаковый коэффициент. После чего вывести эти точки в окне, также перемещая черепашку на этот коэффициент. Например, если черепашка движется на 90 вперед, затем поворачивается направо на 90 градусов и проходит еще на 20 вперед, то:

k=30

fd(90*k)

lt(90)

fd(2*k)

  • Размер окна – рисунок может выйти за пределы окна. Чтобы прокручивать рисунок, можно увеличить размер полотна с помощью команды screensize(x,y)
screensize(x,y) – размеры окна  tracer() – включение/отключение анимации пера  forward(Количество шагов) — движение вперёд на заданное количество шагов ;  backward( Количество шагов ) —  движение назад на заданное количество шагов ;  right( Угол ) —  поворот направо на заданный угол ;  left( Угол ) —  поворот налево на заданный угол ;  color( Цвет пера, Цвет заливки ) —  устанавливает цвет пера и заливки ;  goto( X, Y ) —  перемещается на точку с координатами X, Y ;  dot( Размер, Цвет ) —  рисует точку в текущей позиции ;  speed( Скорость ) —  устанавливает скорость перемещения главного героя (от 0 до 10) ;  xcor() —  возвращает текущую координату по X ;  ycor() —  возвращает текущую координату по Y ;  up() —  поднимает “перо” (другими словами, перестаёт оставлять за собой след) ;  down() —  опускает “перо” (другими словами, начинает оставлять за собой след) ;  begin_fill() —  начинает заливку контура ;  end_fill() —  прекращает заливку контура ;  done() —  завершает работу программы .   Основные команды Python для решение задание № 6

screensize(x,y) – размеры окна tracer() – включение/отключение анимации пера forward(Количество шагов) — движение вперёд на заданное количество шагов ; backward( Количество шагов ) —  движение назад на заданное количество шагов ; right( Угол ) —  поворот направо на заданный угол ; left( Угол ) —  поворот налево на заданный угол ; color( Цвет пера, Цвет заливки ) —  устанавливает цвет пера и заливки ; goto( X, Y ) —  перемещается на точку с координатами X, Y ; dot( Размер, Цвет ) —  рисует точку в текущей позиции ; speed( Скорость ) —  устанавливает скорость перемещения главного героя (от 0 до 10) ; xcor() —  возвращает текущую координату по X ; ycor() —  возвращает текущую координату по Y ; up() —  поднимает “перо” (другими словами, перестаёт оставлять за собой след) ; down() —  опускает “перо” (другими словами, начинает оставлять за собой след) ; begin_fill() —  начинает заливку контура ; end_fill() —  прекращает заливку контура ; done() —  завершает работу программы .

Основные команды Python для решение задание № 6

from turtle import * tracer (0) screensize (3000,3000) k = 30 left (90) right (315) for i in range (7):  forward (16*k)  right (45)  forward (8*k)  right (135) up () for x in range (-50,50):  for y in range (-50,50):  goto (x*k,y*k)  dot (5) done ()

from turtle import *

tracer (0)

screensize (3000,3000)

k = 30

left (90)

right (315)

for i in range (7):

forward (16*k)

right (45)

forward (8*k)

right (135)

up ()

for x in range (-50,50):

for y in range (-50,50):

goto (x*k,y*k)

dot (5)

done ()

from turtle import * tracer (0) screensize (3000,3000) k = 20 left (90) for i in range (2):  forward (8*k)  right (90)  forward (18*k)  right (90) up () fd (4*k) rt (90) fd (10*k) lt (90) down () for i in range (2):  forward (17*k)  right (90)  forward (7*k)  right (90) up () for x in range (-50,50):  for y in range (-50,50):  goto (x*k,y*k)  dot (5) done ()

from turtle import *

tracer (0)

screensize (3000,3000)

k = 20

left (90)

for i in range (2):

forward (8*k)

right (90)

forward (18*k)

right (90)

up ()

fd (4*k)

rt (90)

fd (10*k)

lt (90)

down ()

for i in range (2):

forward (17*k)

right (90)

forward (7*k)

right (90)

up ()

for x in range (-50,50):

for y in range (-50,50):

goto (x*k,y*k)

dot (5)

done ()

from turtle import * tracer (0) screensize (3000,3000) k = 30 left (90) for i in range (7):  right (90)  forward (4*k)  for j in range (2):  left (90)  forward (4*k) up () for x in range (-50,50):  for y in range (-50,50):  goto (x*k,y*k)  dot (5) update()

from turtle import *

tracer (0)

screensize (3000,3000)

k = 30

left (90)

for i in range (7):

right (90)

forward (4*k)

for j in range (2):

left (90)

forward (4*k)

up ()

for x in range (-50,50):

for y in range (-50,50):

goto (x*k,y*k)

dot (5)

update()

20000: print (x) break from turtle import * screensize(3000, 3000) tracer(0) left(90) k = 30 x = 3 for _ in range(4): fd(x*k) rt(90) fd(x*k) lt(90) fd(x*k) rt(90) pu() for x in range(-k, k): for y in range(-k, k): goto(x*k, y*k) dot(3) done()" width="640"

for x in range (1,1000):

if (5*(x-1)**2 + (x-1)*4)20000:

print (x)

break

from turtle import *

screensize(3000, 3000)

tracer(0)

left(90)

k = 30

x = 3

for _ in range(4):

fd(x*k)

rt(90)

fd(x*k)

lt(90)

fd(x*k)

rt(90)

pu()

for x in range(-k, k):

for y in range(-k, k):

goto(x*k, y*k)

dot(3)

done()

200000: print (x) break" width="640"

from turtle import *

screensize(3000, 3000)

tracer(0)

left(90)

k = 30

x = 3

for _ in range(2):

fd(3*x*k)

rt(90)

fd(x*k)

rt(90)

for _ in range (2):

fd (x*k)

lt (90)

for _ in range (2):

fd (x*k)

rt (90)

up()

for x in range(-k, k):

for y in range(-k, k):

goto(x*k, y*k)

dot(5)

done()

for x in range (1,1000):

if ((7*(x-1)**2)+(6*(x-1)))200000:

print (x)

break

from turtle import * screensize(3000, 3000) tracer(0) left(90) pu() k = 30 for _ in range(3):  pd()  for _ in range (2):  fd (10*k)  rt (90)  fd (10*k)  rt (90)  pu()  fd (10*k)  rt (90)  fd (5*k)  lt (90) pu() for x in range(-k, k):  for y in range(-k, k):  goto(x*k, y*k)  dot(5) done()

from turtle import *

screensize(3000, 3000)

tracer(0)

left(90)

pu()

k = 30

for _ in range(3):

pd()

for _ in range (2):

fd (10*k)

rt (90)

fd (10*k)

rt (90)

pu()

fd (10*k)

rt (90)

fd (5*k)

lt (90)

pu()

for x in range(-k, k):

for y in range(-k, k):

goto(x*k, y*k)

dot(5)

done()

Получите свидетельство о публикации сразу после загрузки работы



Получите бесплатно свидетельство о публикации сразу после добавления разработки


Олимпиады «Осенний фестиваль знаний 2024»

Комплекты учителю



Качественные видеоуроки, тесты и практикумы для вашей удобной работы

Подробнее

Вебинары для учителей



Бесплатное участие и возможность получить свидетельство об участии в вебинаре.


Подробнее