Решение модуля 1.4 Введение в программирование C++

Модуль 1.4 (Условный оператор) научит использовать условия т.е «если» и «иначе».

Ниже представлены примеры задач с решением на C++ на тему Условный операторы.

Даны два целых числа. Выведите значение наибольшего из них. Если числа равны, выведите любое из них.

#include <iostream>
using namespace std;

int main()
{
	int a, b;
	cin >> a >> b;
	if (a >= b) {
		cout << a;
	}
	else {
		cout << b;
	}
}

Даны два целых числа. Программа должна вывести единицу, если первое число больше второго, двойку, если второе больше первого, или ноль, если они равны.

#include <iostream>
using namespace std;

int main()
{
	int a, b;
	cin >> a >> b;
	if (a > b) {
		cout << 1;
	}
	else if (a < b){
		cout << 2;
	}
	else {
		cout << 0;
	}
	return 0;
}

Даны три целых числа. Найдите наибольшее из них (программа должна вывести ровно одно целое число). Под наибольшим в этой задаче понимается число, которое не меньше, чем любое другое.

#include <iostream>
using namespace std;

int main()
{
	int a, b, c;
	cin >> a >> b >> c;
	if (a >= b && a >= c) {
		cout << a;
	}
	else if (b >= a && b >= c) {
		cout << b;
	}
	else {
		cout << c;
	}
	return 0;
}

Даны три натуральных числа A, B, C. Определите, существует ли треугольник с такими сторонами. Если треугольник существует, выведите строку YES, иначе выведите строку NO.
Треугольник — это три точки, не лежащие на одной прямой.

#include <iostream>
using namespace std;

int main()
{
	int a, b, c;
	cin >> a >> b >> c;
	if (a + b > c && a + c > b && b + c > a) {
		cout << "YES";
	}
	else {
		cout << "NO";
	}
	return 0;
}

Даны три целых числа. Определите, сколько среди них совпадающих. Программа должна вывести одно из чисел: 3 (если все совпадают), 2 (если два совпадает) или 0 (если все числа различны).

#include <iostream>
using namespace std;

int main()
{
	int a, b, c;
	cin >> a >> b >> c;
	if (a == b && a == c) {
		cout << 3;
	}
	else if (a != b && a != c && b != c) {
		cout << 0;
	}
	else {
		cout << 2;
	}
	return 0;
}

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

#include <iostream>
using namespace std;

int main()
{
	int a, b, c, d;
	cin >> a >> b >> c >> d;
	if (a ==c || b == d) {
		cout << "YES";
	}
	else {
		cout << "NO";
	}
	return 0;
}

Шахматный король ходит по горизонтали, вертикали и диагонали, но только на 1 клетку. Даны две различные клетки шахматной доски, определите, может ли король попасть с первой клетки на вторую одним ходом.

#include <iostream>
using namespace std;

int main()
{
	int a, b, c, d;
	cin >> a >> b >> c >> d;
	if ((a ==c && abs(b - d) == 1) || (b == d && abs(a - c) == 1) || (abs(b - d) == 1 && abs(a - c) == 1)) {
		cout << "YES";
	}
	else {
		cout << "NO";
	}
	return 0;
}

Шахматный слон ходит по диагонали. Даны две различные клетки шахматной доски, определите, может ли слон попасть с первой клетки на вторую одним ходом.

#include <iostream>
using namespace std;

int main()
{
	int a, b, c, d;
	cin >> a >> b >> c >> d;
	cout << ((abs(a - c) == abs(b - d)) ? "YES" : "NO");
	return 0;
}

Шахматный ферзь ходит по диагонали, горизонтали или вертикали. Даны две различные клетки шахматной доски, определите, может ли ферзь попасть с первой клетки на вторую одним ходом.

#include <iostream>
using namespace std;

int main()
{
	int a, b, c, d;
	cin >> a >> b >> c >> d;
	cout << ((abs(a - c) == abs(b - d) || (a == c) || (b == d)) ? "YES" : "NO");
	return 0;
}

Шахматный конь ходит буквой “Г” — на две клетки по вертикали в любом направлении и на одну клетку по горизонтали, или наоборот. Даны две различные клетки шахматной доски, определите, может ли конь попасть с первой клетки на вторую одним ходом.

#include <iostream>
using namespace std;

int main()
{
	int a, b, c, d;
	cin >> a >> b >> c >> d;
	cout << ((abs(a - c) == 1 && abs(b - d) == 2) || (abs(a - c) == 2 && abs(b - d) == 1) ? "YES" : "NO");
	return 0;
}

Шоколадка имеет вид прямоугольника, разделенного на N×M долек. Шоколадку можно один раз разломить по прямой на две части. Определите, можно ли таким образом отломить от шоколадки ровно K долек.

#include <iostream>
using namespace std;

int main()
{
	int N, M, K;
	cin >> N >> M >> K;
	cout << ((((N*M - K)%N == 0 or (N*M - K)%M == 0) and (K < N*M)) ? "YES" : "NO");
	return 0;
}

Яша плавал в бассейне размером N×M метров и устал. В этот момент он обнаружил, что находится на расстоянии X метров от одного из длинных бортиков (не обязательно от ближайшего) и Y метров от одного из коротких бортиков. Какое минимальное расстояние должен проплыть Яша, чтобы выбраться из бассейна на бортик?

#include <iostream>
using namespace std;

int main()
{
	int N, M, X, Y, min, max;
	cin >> N >> M >> X >> Y;
	if (M < N) {
		min = M;
		max = N;
	} else{
		min = N;
		max = M;
	} 
	if (min - X < X and min - X < Y and min - X < max - Y) {
		cout << min - X;
	} else if (X < Y and X < max - Y){
		cout << X;
	} else if (Y < max - Y) {
		cout << Y;
	} else {
		cout << max - Y;
	}
	return 0;
}

Дано три числа. Упорядочите их в порядке неубывания.

#include <iostream>
using namespace std;
int main() {
int a,b,c;
    cin>>a>>b>>c;
    if(a<=b and b<=c){
        cout<<a<<" "<<b<<" "<<c;
}else if(b<=a and a<=c){
      cout<<b<<" "<<a<<" "<<c;
}else if(c<=a and a<=b){
        cout<<c<<" "<<a<<" "<<b;
}else if(c<=b and b<=a){
        cout<<c<<" "<<b<<" "<<a;
}else if(a<=c and c<=b){
        cout<<a<<" "<<c<<" "<<b;
}else{
        cout<<b<<" "<<c<<" "<<a;
}
}   

Есть две коробки, первая размером A1×B1×C1, вторая размером A2×B2×C2. Определите, можно ли разместить одну из этих коробок внутри другой, при условии, что поворачивать коробки можно только на 90 градусов вокруг ребер.

#include <iostream>
using namespace std;

int main() {
    int a1,b1,c1,a2,b2,c2; 
    cin>>a1>>b1>>c1>>a2>>b2>>c2; 
    if(a1 > b1) 
        swap(a1,b1); 
    if(a1 > c1) 
        swap(a1,c1); 
    if(b1 > c1) 
        swap(b1,c1); 
    if(a2 > b2) 
        swap(a2,b2); 
    if(a2 > c2) 
        swap(a2,c2); 
    if(b2 > c2) 
        swap(b2,c2); 
    if(a1==a2 && b1==b2 && c1==c2) 
        cout<<"Boxes are equal"; 
    else 
        if(a1<=a2 && b1<=b2 && c1<=c2) 
            cout<<"The first box is smaller than the second one"; 
    else 
        if(a1>=a2 && b1>=b2 && c1>=c2) 
            cout<<"The first box is larger than the second one"; 
        else 
            cout<<"Boxes are incomparable"; 
    return 0;
}

Если у вас не отображается решение последних задач, значит у вас включен блокировщик рекламы который вырезает эти ответы

Понравилась статья? Поделиться с друзьями:
Подписаться
Уведомить о
guest

4 комментариев
Новые
Старые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
Arp1t21
Arp1t21
29 дней назад

Есть две коробки, первая размером A1×B1×C1, вторая размером A2×B2×C2. Определите, можно ли разместить одну из этих коробок внутри другой, при условии, что поворачивать коробки можно только на 90 градусов вокруг ребер

#include <iostream>
using namespace std;
int main() {
  int a1, b1, c1, a2, b2, c2;
  cin >> a1 >> b1 >> c1 >> a2 >> b2 >> c2;

  // Сортировка размеров первой коробки по убыванию
  int maxA1, midA1, minA1;
  if (a1 >= b1 && a1 >= c1) {
    maxA1 = a1;
    if (b1 >= c1) {
      midA1 = b1;
      minA1 = c1;
    } else {
      midA1 = c1;
      minA1 = b1;
    }
  } else if (b1 >= a1 && b1 >= c1) {
    maxA1 = b1;
    if (a1 >= c1) {
      midA1 = a1;
      minA1 = c1;
    } else {
      midA1 = c1;
      minA1 = a1;
    }
  } else {
    maxA1 = c1;
    if (a1 >= b1) {
      midA1 = a1;
      minA1 = b1;
    } else {
      midA1 = b1;
      minA1 = a1;
    }
  }

  // Сортировка размеров второй коробки по убыванию
  int maxA2, midA2, minA2;
  if (a2 >= b2 && a2 >= c2) {
    maxA2 = a2;
    if (b2 >= c2) {
      midA2 = b2;
      minA2 = c2;
    } else {
      midA2 = c2;
      minA2 = b2;
    }
  } else if (b2 >= a2 && b2 >= c2) {
    maxA2 = b2;
    if (a2 >= c2) {
      midA2 = a2;
      minA2 = c2;
    } else {
      midA2 = c2;
      minA2 = a2;
    }
  } else {
    maxA2 = c2;
    if (a2 >= b2) {
      midA2 = a2;
      minA2 = b2;
    } else {
      midA2 = b2;
      minA2 = a2;
    }
  }

  // Проверка равенства коробок с учетом поворотов
  bool areEqual = (maxA1 == maxA2 && midA1 == midA2 && minA1 == minA2) ||
          (maxA1 == maxA2 && midA1 == minA2 && minA1 == midA2) ||
          (maxA1 == midA2 && midA1 == maxA2 && minA1 == minA2) ||
          (maxA1 == midA2 && midA1 == minA2 && minA1 == maxA2) ||
          (maxA1 == minA2 && midA1 == maxA2 && minA1 == midA2) ||
          (maxA1 == minA2 && midA1 == midA2 && minA1 == maxA2);

  if (areEqual) {
    cout << «Boxes are equal» << endl;
  } else {
    // Проверка, может ли первая коробка поместиться во вторую
    if (maxA1 <= maxA2 && midA1 <= midA2 && minA1 <= minA2) {
      cout << «The first box is smaller than the second one» << endl;
    }
    // Проверка, может ли вторая коробка поместиться в первую
    else if (maxA2 <= maxA1 && midA2 <= midA1 && minA2 <= minA1) {
      cout << «The first box is larger than the second one» << endl;
    }
    // В остальных случаях коробки несравнимы
    else {
      cout << «Boxes are incomparable» << endl;
    }
  }

  return 0;
}

Arp1t21
Arp1t21
29 дней назад

Дано три числа. Упорядочите их в порядке неубывания

#include <iostream>
using namespace std;
int main() {
  int a, b, c;
  cin >> a >> b >> c;
  if (a > b) {
    swap(a, b);
  }
  if (a > c) {
    swap(a, c);
  }
  if (b > c) {
    swap(b, c);
  }
  cout << a << » » << b << » » << c;
 return 0;
}

Arp1t21
Arp1t21
29 дней назад

Яша плавал в бассейне размером N×M метров и устал. В этот момент он обнаружил, что находится на расстоянии X метров от одного из длинных бортиков (не обязательно от ближайшего) и Y метров от одного из коротких бортиков. Какое минимальное расстояние должен проплыть Яша, чтобы выбраться из бассейна на бортик?

#include <iostream>
using namespace std;
int main() {
  int n,m,x,y;
  cin>>n>>m>>x>>y;
  if(n > m){
    int n1 = n;
    n = m;
    m = n1;
  }
  int x2 = n-x;
  int y2 = m-y;
  if(x <= y && x <= x2 && x <= y2){
    cout << x;
  }
  else if(x2<=y && x2<=x && x2<=y2){
    cout<<x2;
  }
  else if(y<=x && y<=y2 && y<=x2){
cout<<y;
  }
  else {
    cout<<y2;
  }
      return 0;
}

Владос
Владос
8 месяцев назад

Яша плавал в бассейне размером N×M метров и устал. В этот момент он обнаружил, что находится на расстоянии X метров от одного из длинных бортиков (не обязательно от ближайшего) и Y метров от одного из коротких бортиков. Какое минимальное расстояние должен проплыть Яша, чтобы выбраться из бассейна на бортик?

#include <iostream>
#include <algorithm>
using namespace std;

int main() {
  int N, M, X, Y;
  cin >> N >> M >> X >> Y;

  int min_dist = min({X, Y, N — X, M — Y});

  cout << min_dist << endl;

  return 0;
}

4
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x