Определить, сможет ли ферзь перейти с одной клетки на другую - C (СИ)

Узнай цену своей работы

Формулировка задачи:

проверка правильности введения точек делать не обязательно. метод решения не важен. моя прога не работает, не видит printf("\tpo gor(a,b,c,d,e,f,g,h)=\n "); scanf("%c",&n4)
#include <conio.h>
#include <stdio.h>
#include <math.h>
#include <locale.h>
int main()
{
    int m1,m2;
    char n3;
    char n4;
    printf("vvedite koorditati 1 polya\n");
    printf("\tpo gor(a,b,c,d,e,f,g,h)= "); scanf("%c",&n3);
    printf("\tpo vert(1,2,3,4,5,6,7,8)= "); scanf("%d",&m1);
    printf("\nvvedite koordinati 2 polya\n");
    printf("\tpo gor(a,b,c,d,e,f,g,h)=\n "); scanf("%c",&n4);
    printf("\tpo vert(1,2,3,4,5,6,7,8)= "); scanf("%d",&m2);
    if (m1==m2 || n3==n4 || (fabs(n3-n4))==(fabs(m1-m2)))
            printf("\n\tfers smojet!");
        else
            printf("\n\tfers ne smojet!");
 
   ;
   return 0;
}

Решение задачи: «Определить, сможет ли ферзь перейти с одной клетки на другую»

textual
Листинг программы
#include <conio.h>
#include <stdio.h>
#include <math.h>
#include <locale.h>
int main()
{
    int m1,m2;
    char n3;
    char n4;
    printf("vvedite koorditati 1 polya\n");
    printf("\tpo gor(a,b,c,d,e,f,g,h)= "); scanf("%c",&n3);
    printf("\tpo vert(1,2,3,4,5,6,7,8)= "); scanf("%i%*c",&m1);
    printf("\nvvedite koordinati 2 polya\n");
    printf("\tpo gor(a,b,c,d,e,f,g,h)= "); scanf("%c",&n4);
    printf("\tpo vert(1,2,3,4,5,6,7,8)= "); scanf("%i%*c",&m2);
    if (m1==m2 || n3==n4 || (fabs(n3-n4))==(fabs(m1-m2)))
            printf("\n\tfers smojet!\n");
        else
            printf("\n\tfers ne smojet!\n");
 
   ;
   return 0;
}

Объяснение кода листинга программы

  1. Включаем необходимые заголовочные файлы
  2. Объявляем переменные: m1,m2 - для хранения введенных координат, n3,n4 - для хранения символов
  3. Выводим сообщение и призыв к вводу координат первого поля
  4. Считываем координаты: сначала символ, затем целое число (со сбрасыванием остатка введенного числа в начало следующего поля ввода)
  5. Выводим сообщение и призыв к вводу координат второго поля
  6. Считываем координаты: сначала символ, затем целое число (со сбрасыванием остатка введенного числа в начало следующего поля ввода)
  7. Производим проверку: если условие выполняется, то выводим сообщение о возможности хода, иначе выводим сообщение о невозможности хода
  8. Завершаем программу и возвращаем 0

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4 из 5
Похожие ответы