Написать на python
вы пишете игру, в которой герой перемещается по экрану только влево и вправо, а его положение записывают как положение на числовой прямой. в начале игры герой стоит на отметке start. смещение вправо на 10 пунктов будет записано как 10, а влево как -10. игровое поле имеет ширину 100 пунктов, то есть герой может перемещаться от отметки 0 до отметки 99.
само игровое поле “закольцовано”, то есть уходя за правую границу экрана герой появляется слева.
если герой находится, например, на отметке 90 и получает команду перейти вправо на 30 пунктов, он окажется на отметке 20.
герой с отметки start сместился на step пунктов. в каком месте числовой прямой он окажется?
программа получает на вход значение переменных start и step, и должна вывести одно число - положение героя после шага.
пример входных данных
70
-150
результат работы
20
пояснение
герой с отметки 70 переместился влево на 150:
70 - 150 = -80
значит он переместился на 80 от правого края:
100 - 80 = 20
примечание
в этой вам нужно вспомнить про правила деления с остатком.
рассмотрим такой пример:
герой с точки 20 шагает вправо на 30 пунктов: 20 + 30 = 50, 50 : 100 = 0 (ост. 50). герой окажется в точке 50
герой с точки 50 шагает вправо на 80 пунктов: 50 + 80 = 130, 130 : 100 = 1 (ост. 30). герой окажется в точке 30
герой с точки 30 шагает влево на 90 пунктов: 30 - 90 = -60, -60 : 100 = -1 (ост. 40). герой окажется в точке 40
то есть вне зависимости от того, какая величина получилась при сложении точки старта с шагом, мы получим новую позицию персонажа, если возьмем остаток от деления нашей суммы на ширину окна (на 100)
int main(void)
{
/* Переменная для хранения числа */
double chislo;
/* Сообщение с запросом для пользователя */
printf("Введите ваше число: ");
/* Считывание числа в определенном формате в определенное место */
scanf("%f", &chislo);
/* Проверяем, является ли число большем нуля (положительным)*/
if (chislo > 0) {
/* Если да, то прибавляем единицу (операция инкремент) */
chislo++;
}
else {
/* Если число отрицательное, то вычитаем из числа двойку */
chislo -= 2;
}
/* Выводим результата */
printf("Результата: %f", chislo);
return NULL;
}
алг
нач цел X
ввод X
если X>0 то
X:=X+1
все
вывод X
кон
2.
алг
нач цел X
ввод X
если X>0 то
X:=X+1
иначе
X:=X-2
все
вывод X
кон
3.
алг
нач цел X
ввод X
если X>0 то
X:=X+1
все
если X<0 то
X:=X-2
все
если X=0 то
X:=10
все
вывод X
кон
4.
алг
нач цел X,Y,Z,N
ввод X,Y,Z
N:=0
если X>0 то
N:=N+1
все
если Y>0 то
N:=N+1
все
если Z>0 то
N:=N+1
все
вывод N
кон
5.
алг
нач цел X,Y,Z,N,K
ввод X,Y,Z
N:=0
K:=0
если X>0 то
N:=N+1
иначе
K:=K+1
все
если Y>0 то
N:=N+1
иначе
K:=K+1
все
если Z>0 то
N:=N+1
иначе
K:=K+1
все
вывод N,K
кон
Самые наиболее простые варианты выбрал думаю в самый раз