shmidt
?>

1. Вычислить выражение. 2. Построить таблицу истинности логической функции, а затем у

Информатика

Ответы

sanyaborisov910067
# coding: utf-8
# Python 3.X

'''
Вводятся четыре числа:
xa, ya: координаты ферзя
xb, yb: координаты другой фигуры

Координаты - целые числа
в интервале от 1 до 8.

Вывод - булево значение:
сможет ли ферзь побить фигуру
за 1 ход.
'''
def hits(xa, ya, xb, yb) -> bool:
    '''
    Проверка аргументов.
    '''
    args = (xa, ya, xb, yb)
    if any([not 1 <= z <= 8 for z in args]):
        raise ValueError("Неверные координаты!")

    '''
    На одной прямой.
    '''
    if xa == xb or ya == yb:
        return True

    '''
    Северо-западная диагональ.
    '''
    x_nw, y_nw = xa, ya
    while x_nw > 1 and y_nw > 1:
        x_nw -= 1
        y_nw -= 1
        if x_nw == xb and y_nw == yb:
            return True

    '''
    Юго-восточная диагональ.
    '''
    x_se, y_se = xa, ya
    while x_se < 8 and y_se < 8:
        x_se += 1
        y_se += 1
        if x_se == xb and y_se == yb:
            return True

    '''
    Юго-западная диагональ.
    '''
    x_sw, y_sw = xa, ya
    while x_sw > 1 and y_se < 8:
        x_sw -= 1
        y_sw += 1
        if x_sw == xb and y_sw == yb:
            return True

    '''
    Северо-восточная диагональ.
    '''
    x_ne, y_ne = xa, ya
    while x_ne < 8 and y_se > 1:
        x_ne += 1
        y_ne -= 1
        if x_ne == xb and y_ne == yb:
            return True

    return False # если не бьет

inp = [int(x) for x in input().split()]
if hits(*inp):
    print('YES')
else:
    print('NO')
steff77

Чтобы наш снаряд (пуля, мяч или что-то еще) попало в цель, нужно чтобы высота подъема снаряда совпала с высотой, на которой расположена цель, и чтобы дальность полета совпала с заданным расстоянием. Иначе снаряд может улететь выше или ниже цели или не долетать.

Воспользуемся формулами по равнозамедленному движению.


program zadacha;

const

g=9.8;

var

h,L,a,V,S,h1:real;

begin

writeln('vvedite visotu i dalnost celi');

readln(h,L);

writeln('vvedite ugol, skorost snariada');

readln(a,V);

a:=a*pi/180;

h1:=int(( sqr(V)* sqr(sin(a))) / (2*g));

S:=int((sqr(V)*sin(2*a))/g);

if (S=L) and (h1=h) then writeln('popal') else writeln('ne popal');

end.


Напишите программу на паскале,которая будет сообщать можно ли попасть в цель находящая на заданном р
Напишите программу на паскале,которая будет сообщать можно ли попасть в цель находящая на заданном р

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

1. Вычислить выражение. 2. Построить таблицу истинности логической функции, а затем у
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

avetisov-84850
Чунихина1586
marysya60
cutur3414
zhannasokortova
marinakovyakhova
Алексеевна
Валентина980
manu95957
timsch12
andreich97
e-liza-k
dmitzu8594
saveskul84
Суханова1532