Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Продолжение таблицы 2






   
   
   

 

Рисунок 2 - Скриншот выполнения программы для задачи №2

 

Задача №3. Даны координаты двух различных полей шахматной доски x1, y1, x2, y2 (целые числа, лежащие в диапазоне 1–8). Проверить истинность высказывания: «Король за один ход может перейти с одного поля на другое». Если пользователь введёт дважды координаты одной и той же клетки считать решение задачи ложью.

Описание алгоритма: Пользователь вводит координаты двух различных полей шахматной доски x1, y1, x2, y2 (целые числа, лежащие в диапазоне 1–8). Шахматная фигура «король» может ходить в любую сторону, но только на одну клетку. Логическое выражение проверяет истинно это или верно, затем выводится результат (True, False).

Текст программы:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

 

namespace ConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

Int32 x1, x2, y1, y2; Boolean res; //Объявляем переменные

Console.Write(" Введите координату X (1...8) первого поля: ");

x1 = Convert.ToInt32(Console.ReadLine()); //Вводим значение переменной х1

Console.Write(" Введите координату Y (1...8) первого поля: ");

y1 = Convert.ToInt32(Console.ReadLine()); //Вводим значение переменной у1

Console.Write(" Введите координату X (1...8) второго поля: ");

x2 = Convert.ToInt32(Console.ReadLine()); //Вводим значение переменной х2

Console.Write(" Введите координату Y (1...8) второго поля: ");

y2 = Convert.ToInt32(Console.ReadLine()); //Вводим значение переменной у2

res = Math.Abs(x1 - x2) == 1 & & y1 == y2 & & x1! = x2 || Math.Abs(y1 - y2) == 1 & & x1 == x2 & & y1! = y2 || Math.Abs(y1 - y2) == 1 & & Math.Abs(x1 - x2) == 1; //Проверяем, может ли король перейти с одного поля на другое

Console.Write(" Может ли Король за один ход перейти с одного поля на другое? {0}", res); //Выводим результат

Console.ReadKey();

}

}

}

 

Таблица 3 - Тестовые примеры для задачи №3

x1 y1 x1 y2 Результат
        True
        False
        True
        False
        False
        True
        True
        True
        True
        False

 

Рисунок 3 - Скриншот выполнения программы для задачи №3

 

Вывод: В данной лабораторной работе я научился программировать на С# в среде программирования Microsoft Visual C#, освоил принципы решения разных типов задач: на ввод и вывод данных, оператор присваивания, арифметические операторы, стандартные функции, целочисленные операции, на использование логических операторов и т.д.


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.006 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал