В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
Sijjj777
Sijjj777
18.04.2022 18:30 •  Информатика

Здравствуйте! Прохожу ГТО для 5-того класса. Не могу решить один уровень. Суть задания: ты играешь за робота, который должен дойти до финиша. Есть кнопки ‘шагнуть вперёд’, ‘повернуть направо’, ‘повернуть налево’, и ‘повторить ... раз (максимум 12)’. По поводу последней кнопки: к примеру, роботу нужно шагнуть вперёд пять раз. Что бы не вставлять в пустой бланк пять раз кнопку ‘шагнуть вперёд’, можно вставить кнопку ‘повторить’, выставить на ней ‘5’ и в эту кнопку ‘засунуть’ одну кнопку ‘шагнуть вперёд’. Фото уровня находиться в вопросе.
Место старта - левый квадрат на самом верху. Лимит кнопок - 13 штук (токсин можно поставить не более 13 кнопок).


Здравствуйте! Прохожу ГТО для 5-того класса. Не могу решить один уровень. Суть задания: ты играешь з

Показать ответ
Ответ:
katmik04
katmik04
26.03.2023 18:36
Если на C++, то вот процедуры:
если с библиотеки graphics.h
x и y нужно передавать левого верхнего угла буквы

#include <graphics.h>
#include <stdio.h>
#include <conio.h>
int x=50,y=50;
void M(int x,int y)
{ // длина буквы 44, высота тоже 44
x+=50;
line(x,y,x,y+44);
line(x,y,x+22,y+44);
line(x+22,y+44,x+44,y);
line(x+22,y+44,x+44,y+44);
}
void I(int x,int y)
{ // длина буквы 22, высота тоже 44
x+=28;
line(x,y,x,y+44);
line(x,y+44,x+22,y);
line(x+22,y,x+22,y+44);
}
void R(int x,int y)
{ // длина буквы 22, высота тоже 44
x+=28;
line(x,y,x,y+44);
line(x,y,x+22,y);
line(x,y+22,x+22,y+22);
line(x+22,y,x+22,y+22);
}

main()
{
initwindow(800,600);
M(x,y); I(x,y); R(x,y);
x=50;y=100;
R(x,y); I(x,y); M(x,y);
x=50;y=150;
M(x,y); I(x,y); M(x,y);
getch();
closegraph();
}

P.S. я старался
0,0(0 оценок)
Ответ:
IIvanMuratov2003
IIvanMuratov2003
24.03.2020 17:39
Чтобы получить ответ надо число сотрудников (вводится в самом начале) разделить на число отделов. Число отделов определяется различным числом последних цифр телефона: от 00 до 99. Номер отдела связываем с индексом массива А, в который будем ставить 1 если отдел с таким номером есть. Поскольку в задаче не ставится вопрос о проверке входных данных и сохранении их значения, то составляем такой код:
Sub z()
Dim a(99) As Integer
n = InputBox("Введите N")
For i = 1 To n
 s = InputBox("Введите данные сотрудника")
 k = Val(Right(s, 2))
 a(k) = 1
Next i
k = 0  'считаем число отделов
For i = 1 To 100
    If a(i) > 0 Then k = k + 1
Next i
MsgBox (n / k)
End Sub
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота