Есть ответ 👍

На шахматной доске в клетке (x1, y1) находится шахматный ферзь. определите, бьет ли он клетку (x2, y2). на вход программе четыре целых числа x1, y1, x2, y2 (1≤x1,y1,x2,y2≤8) — координаты двух полей на шахматной доске размера 8×8. требуется вывести 1, если ферзь бьет клетку, или 0, если нет.с++

262
417
Посмотреть ответы 2

Ответы на вопрос:

tyfftgv
4,4(49 оценок)

Ферзь, стоящий в точке , может бить фигуры, у которых:       1)       2)       3) координаты находятся по диагонали от ферзя. имеем не самую лучшую и чистую, но рабочую программку: #include < cstdio> int main() {   int x1, x2, y1, y2, x_d1, y_d1, x_d2, y_d2;   printf("x1=");   scanf("%d", & x1);   printf("y1=");   scanf("%d", & y1);   printf("x2=");   scanf("%d", & x2);   printf("y2=");   scanf("%d", & y2);   /* проверка на линейные совпадения */   if ( (x1 == x2) or (y1 == y2) ) {       printf("1");       return 1;   }   /* поиск пересечения с диагональю 1 */   x_d1 = x1;   y_d1 = y1;   while ( (x_d1 > 1) and (y_d1 > 1) ) {       x_d1--;       y_d1--;       if ( (x2 == x_d1) and (y2 == y_d1) ) {           printf("1");           return 1;       }   }   while ( (x_d1 < 8) and (y_d1 < 8) ) {       x_d1++;       y_d1++;       if ( (x2 == x_d1) and (y2 == y_d1) ) {           printf("1");           return 1;       }   }   /* поиск пересечения с диагональю 2 */   x_d2 = x1;   y_d2 = y1;   while ( (x_d2 < 8) and (y_d1 > 1) ) {       x_d1++;       y_d1--;       if ( (x2 == x_d2) and (y2 == y_d2) ) {           printf("1");           return 1;       }   }   while ( (x_d1 > 1) and (y_d1 < 8) ) {       x_d1--;       y_d1++;       if ( (x2 == x_d2) and (y2 == y_d2) ) {           printf("1");           return 1;       }   }     printf("0");   return 0; }
Fondon
4,7(81 оценок)

1)var x,y,z,min,max: real; beginreadln(x,y); if x> y then  beginmax: =x; min: =y; endelse if x< y thenbeginmax: =y; min: =x; end; z: =(min+0.5)/(1+sqr(max)); writeln(z); end.2)var x,y,z,min,max: real; begin readln(x,y); if x> y then begin max: =x; min: =y; end else if x< y then begin max: =y; min: =x; end; if x< 0 then z: =max else if x> =0 then z: =min; writeln(z); end.

Реши свою проблему, спроси otvet5GPT

  • Быстро
    Мгновенный ответ на твой вопрос
  • Точно
    Бот обладает знаниями во всех сферах
  • Бесплатно
    Задай вопрос и получи ответ бесплатно

Популярно: Информатика

Caktus Image

Есть вопросы?

  • Как otvet5GPT работает?

    otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса.
  • Сколько это стоит?

    Проект находиться на стадии тестирования и все услуги бесплатны.
  • Могу ли я использовать otvet5GPT в школе?

    Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое!
  • В чем отличия от ChatGPT?

    otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.

Подпишись на наш телеграмм канал

GTP TOP NEWS