Напишите в комментарии к этой записи консольные приложения для решения этих задач, указав код задачи.
Решены задачи: 1,3,4,10,15,21,27,28. Не решены: 2,5-9,11-14,16-20,22-26.
Задачи
I3.1. Проверить, принадлежит ли число, введенное с клавиатуры, интервалу (–5, 3).
I3.2. Даны три вещественных числа a, b, c. Проверить:
а) выполняется ли неравенство a < b < c;
б) выполняется ли неравенство b > a > c.
I3.3. Определить, является ли число а делителем числа b или, наоборот, число b делителем числа а. Ответом должны служить сообщения «Да, одно из чисел является делителем другого» или «Нет, ни одно из чисел не является делителем другого».
I3.4. Определить, верно ли, что при делении неотрицательного целого числа a на положительное число b получается остаток, равный одному из двух заданных чисел c или d.
I3.5. Даны три вещественных числа a, b, c. Определить, имеется ли среди них хотя бы одна пара равных между собой чисел.
I3.6. Определить, является ли треугольник со сторонами a, b, c равносторонним.
I3.7. Определить, является ли треугольник со сторонами a, b, c равнобедренным.
I3.8. Известен рост трех человек. Определить, одинаков ли их рост?
I3.9. Даны вещественные числа a, b, c (a не равно 0). Решить уравнение ax2 + bx + c = 0 . В числе возможных вариантов учесть вариант равенства корней уравнения.
I3.10. Даны вещественные положительные числа a, b, c, d. Выяснить, можно ли прямоугольник со сторонами a, b уместить внутри прямоугольника со сторонами c, d так, чтобы каждая из сторон одного прямоугольника была параллельна или перпендикулярна каждой стороне второго прямоугольника.
I3.11. Определить, войдет ли в конверт с внутренними размерами a и b мм прямоугольная открытка размером с и d мм. Для размещения открытки в конверте необходим зазор в 1 мм с каждой стороны.
I3.12. Вася пытается высунуть голову в форточку размерами a и b см. Приняв условно, что его голова — круглая диаметром d см, определить, сможет ли Вася сделать это. Для прохождения головы в форточку необходим зазор в 1 см с каждой стороны.
I3.13. Даны вещественные положительные числа a, b, c, x, y. Выяснить, пройдет ли кирпич с ребрами a, b, c в прямоугольное отверстие со сторонами x и y. Просовывать кирпич в отверстие разрешается только так, чтобы каждое из его ребер было параллельно или перпендикулярно каждой из сторон отверстия.
I3.14. Пассажир должен был сдать в камеру хранения пустой чемодан в форме параллелепипеда размерами a1 , a2 и a3 см и коробку размерами b1 , b2 и b3 см. Оплачивать нужно каждый размещаемый предмет. Определить, сможет ли пассажир сэкономить на оплате, поместив коробку в чемодан так, что стороны чемодана и коробки будут параллельны либо перпендикулярны друг другу.
I3.15. Дано двузначное число. Определить:
а) входит ли в него цифра 3;
б) входит ли в него цифра а.
I3.16. Дано двузначное число. Определить:
а) входят ли в него цифры 4 или 7;
б) входят ли в него цифры 3, 6 или 9.
I3.17. Дано трехзначное число. Определить:
а) входит ли в него цифра 6;
б) входит ли в него цифра n.
I3.18. Дано трехзначное число. Определить:
а) входят ли в него цифры 4 или 7;
б) входят ли в него цифры 3, 6 или 9.
I3.19. Дано четырехзначное число. Определить:
а) входит ли в него цифра 4;
б) входит ли в него цифра b.
I3.20. Дано четырехзначное число. Определить:
а) входят ли в него цифры 2 или 7;
б) входят ли в него цифры 3, 6 или 9.
I3.21. Дано натуральное число n (n <= 9999). Выяснить, является ли оно палиндромом («перевертышем») с учетом четырех цифр, как, например, числа 7777, 8338, 0330 и т. п. (Палиндромом называется число, десятичная запись которого читается одинаково слева направо и справа налево).
I3.22. Дано натуральное число n (n <= 9999). Выяснить, верно ли, что это число содержит ровно три одинаковые цифры с учетом четырех цифр, как, например, числа 3363, 4844, 0300 и т. п.
I3.23. Дано натуральное число n (n <= 9999). Выяснить, различны ли все четыре цифры этого числа (с учетом четырех цифр). Например, в числе 3678 все цифры различны, в числе 0023 — нет.
I3.24. Определить, является ли заданное шестизначное число счастливым. (Счастливым называют такое шестизначное число, что сумма его первых трех цифр равна сумме его последних трех цифр).
I3.25. Год является високосным, если его номер кратен 4, однако из кратных 100 високосными являются лишь кратные 400, например, 1700, 1800 и 1900 — не-
високосные года, 2000 — високосный. Дано натуральное число n. Определить, является ли високосным год с таким номером.
I3.26. Имеются стол прямоугольной формы с размерами a x b (a и b — целые числа, a > b) и кости домино с размерами c x d x e (c, d и e — целые числа, c > d > e). Найти вариант размещения на столе наибольшего количества костей. Все размещаемые кости должны лежать на одной и той же грани в один ярус без свешивания со стола. Все ребра костей домино должны быть параллельны или перпендикулярны каждой стороне стола.
I3.27. Дано целое число k (1 <= k <= 365). Определить, каким будет k-й день года: выходным (суббота и воскресенье) или рабочим, если 1 января — понедельник.
I3.28. Даны два прямоугольника, стороны которых параллельны или перпендикулярны осям координат. Известны координаты левого нижнего угла каждого из них и длины их сторон. Один из прямоугольников назовем первым, другой — вторым.
а) Определить, принадлежат ли все точки первого прямоугольника второму.
б) Определить, принадлежат ли все точки одного из прямоугольников другому.
в) Определить, пересекаются ли эти прямоугольники.
NEW: Наш Чат, в котором вы можете обсудить любые вопросы, идеи, поделиться опытом или связаться с администраторами.
I3.8. Известен рост трех человек. Определить, одинаков ли их рост?
Отлично!
I3.5. Даны три вещественных числа a, b, c. Определить, имеется ли среди них хотя бы одна пара равных между собой чисел.
I3.2
а)
б)
Вы правы, но этот метод проверки не совсем понятен.
Проще например для I3.2 написать:
{
// I3.13. Даны вещественные положительные числа a, b, c, x, y.
// Выяснить, пройдет ли кирпич с ребрами a, b, c в прямоугольное отверстие со сторонами x и y.
// Просовывать кирпич в отверстие разрешается только так, чтобы каждое из его ребер было параллельно или перпендикулярно каждой из сторон отверстия.
Console.WriteLine(«Vvedite положительные числа a, b, c, x, y «);
double a = Convert.ToDouble(Console.ReadLine());
double b = Convert.ToDouble(Console.ReadLine());
double c = Convert.ToDouble(Console.ReadLine());
double x = Convert.ToDouble(Console.ReadLine());
double y = Convert.ToDouble(Console.ReadLine());
Console.WriteLine(«Data : \n a:»+a +»\n b:»+b+»\n c:»+c + «\n x:» + x + «\n y:» + y);
if (a<x || a<y && b<x || b<y)
{
Console.WriteLine(«\n пройдет кирпич с ребрами a, b, c в прямоугольное отверстие со сторонами x и y.»);
}
else if (c < x || c < y && b < x || b < y)
{
Console.WriteLine(«\n пройдет кирпич с ребрами a, b, c в прямоугольное отверстие со сторонами x и y.»);
}
else if (a < x || a < y && c < x || c < y)
{
Console.WriteLine(«\n пройдет кирпич с ребрами a, b, c в прямоугольное отверстие со сторонами x и y.»);
}
else
{
Console.WriteLine(«\n NE! пройдет кирпич с ребрами «);
}
}
{
// I3.6. Определить, является ли треугольник со сторонами a, b, c равносторонним.
Console.WriteLine(«Vvedite сторонi треугольникa a, b ,c «);
int a = Convert.ToInt32(Console.ReadLine());
int b = Convert.ToInt32(Console.ReadLine());
int c = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(«Data : \n a:»+a +»\n b:»+b+»\n c:»+c);
if (a==b && b==c )
{
Console.WriteLine(» \n равносторонни \n» + a +»=»+b+»=»+c);
}
else
{
Console.WriteLine(» \n Ne равносторонни \n» + b + » ; » + a + » ; » + c);
}
}
{
// I3.1. Проверить, принадлежит ли число, введенное с клавиатуры, интервалу (–5, 3).
Console.WriteLine(«Vvedite chislo»);
int a = Convert.ToInt32(Console.ReadLine());
if (a > 5 && a < -3)
{
Console.WriteLine(» \n Vashe chislo принадлежит интервалу (–5, 3)» +a);
}
else
{
Console.WriteLine(» \n Vashe chislo NE принадлежит интервалу (–5, 3)» + a);
}
}
Меня бл просто интересует….Т.е. человек только дошел до условных операторов, а вы пишите ответ на задачу с использование цикла…кажется вы не правы…надо ведь обьяснять человеку исходя из данного уровня познаний…
I3.22. Дано натуральное число n (n <= 9999). Выяснить, верно ли, что это число содержит ровно три одинаковые цифры с учетом четырех цифр, как, например, числа 3363, 4844, 0300 и т. п.
</Console.WriteLine(«Enter the number (n > 999)»);
int n = int.Parse(Console.ReadLine());
int x = n / 1000 % 10; //1
int y = n / 100 % 10; //2
int z = n / 10 % 10; //3
int c = n % 10; //4
if (x == y && x == z || x == z && x == c || y == x && y == z || y == z && y == c || z == y && z == x || z == c && z == y || c == x && c == y || c == z && c == y)
{
Console.WriteLine($»{n} contains 3 same digit»);
}
else
{
Console.WriteLine($»{n} not contains 3 same digit»);
}
/>
Ярослав, все верно. Но:
— рассмотрен только случай а)
— можно значительно упростить алгоритм перебирая цифру за цифрой в цикле
— имена переменных не понятные вообще (a, b, desyati — не значит то, что там хранится)
— считается плохим стилем объявлять переменные в одну строку.
I3.16. Дано двузначное число. Определить:
а) входят ли в него цифры 4 или 7;
б) входят ли в него цифры 3, 6 или 9.
Алексей В, хорошо. Рекомендую в будущем использовать более понятные имена вместо a1, a2 — numberDigit0, numberDigit1, …
l3.8
Console.WriteLine(«Рост первого человека:»);
int a = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(«Рост второго человека»);
int b = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(«Рост третьего человека»);
int c = Convert.ToInt32(Console.ReadLine());
if (a==b&b==c)
{
Console.WriteLine(«Рост троих людей одинаков {0}={1}={2}», a,b,c);
}
else if(a>b&a>c)
{
Console.WriteLine(«Первый человек с ростом {0} см, выше чем второй человек с ростом {1} см и третий с ростом {2} см. ,», a, b, c);
}
else if (b > a & b > c)
{
Console.WriteLine(«Второй человек с ростом {1} см, выше чем первый человек с ростом {0} см и третий с ростом {2} см.», a, b, c);
}
else
{
Console.WriteLine(«Третий человек с ростом {2} см, выше чем первый человек с ростом {0} см и второй с ростом {1} см.», a, b, c);
}
Не знаю правильно или нет, но все же попытаюсь
Console.WriteLine(«Введите число a»);
int a = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(«Введите число b»);
int b = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(«Введите число c»);
int c = Convert.ToInt32(Console.ReadLine());
if (a == b)
{
Console.WriteLine(«Число a равно числу b»);
}
else if (a == c)
{
Console.WriteLine(«Число a равно числу c»);
}
else if (b == c)
{
Console.WriteLine(«Число b равно числу c»);
}
else if (a == c)
{
Console.WriteLine(«Число a равно числу c»);
}
else
Console.WriteLine(«Ни одно из чесел не равно друг друг»);
I3.2. Даны три вещественных числа a, b, c. Проверить:
а) выполняется ли неравенство a < b a > c.
namespace Lessons
{
class Program
{
public static void Main(string[] args)
{
Repeat: //Calling the repeater
int a = GetRandom();//Random data to make work easier
int b = GetRandom();
int c = GetRandom();
try
{
if (a < b && b a)
{
Console.WriteLine($»The inequality {a} < {b} a && a > c && c {a} > {c} is fulfilled.»);
}
else
{
Console.WriteLine($»Horribly! None of the inequalities are not fulfilled. «);
}
}
//Catches the exception
catch
{
Exception ex = new();
Console.WriteLine($»You have entered invalid value. Type of exeptiont:{ex.Message}»);
}
//Repeater
ConsoleKeyInfo rep;
Console.WriteLine(«\nДля повтора нажмите Y, для выхода N»);
rep = Console.ReadKey(true);
if (rep.Key == ConsoleKey.Y) goto Repeat;
if (rep.Key == ConsoleKey.N) return;
}
//Random numders
public static int GetRandom()
{
Random rand = new Random();
int value = rand.Next(10,999); // Calling random numbers
return value;
}
}
I3.24. Определить, является ли заданное шестизначное число счастливым. (Счастливым называют такое шестизначное число, что сумма его первых трех цифр равна сумме его последних трех цифр).
namespace Lessons
{
class Program
{
public static void Main(string[] args)
{
Repeat: //Calling the repeater
//Random data to make work easier
int a = GetRandom();
int b = a / 100000;
int c = (a / 10000) — (b * 10);
int d = (a / 1000)- (b * 100) — (c * 10);
int x = (a / 100) — (b * 1000) — (c * 100) — (d * 10);
int y = (a / 10) — (b * 10000) — (c * 1000) — (d * 100) — (x * 10);
int z = a % 10;
try
{
if (b + c + d == x + y + z)
{
Console.WriteLine($»Luck {b}+{c}+{d} = {x}+{y}+{z}»);
}
else
{
Console.WriteLine($»Nooo( {b}+{c}+{d} != {x}+{y}+{z}»);
}
}
//Catches the exception
catch
{
Exception ex = new();
Console.WriteLine($»You have entered invalid value. Type of exeptiont:{ex.Message}»);
}
//Repeater
ConsoleKeyInfo rep;
Console.WriteLine(«\nДля повтора нажмите Y, для выхода N»);
rep = Console.ReadKey(true);
if (rep.Key == ConsoleKey.Y) goto Repeat;
if (rep.Key == ConsoleKey.N) return;
}
public static int GetRandom() //Random numders
{
Random rand = new Random();
int value = rand.Next(100000,999999); // Calling random numbers
return value;
}
}
}
Как помне слишком громоздкое определение каждых цифры.Пока сижу и думаю как по другому определить отдельные цифры.
I3.2. Даны три вещественных числа a, b, c. Проверить:
а) выполняется ли неравенство a < b a > c.
Console.WriteLine(«Введите первое число»);
int a = int.Parse(Console.ReadLine());
Console.WriteLine(«Введите второе число»);
int b = int.Parse(Console.ReadLine());
Console.WriteLine(«Введите третье число»);
int c = int.Parse(Console.ReadLine());
if (a < b && b < c)
{
Console.WriteLine("Условие: a < b a && a > c)
{
Console.WriteLine(«Условие: b > a > c, верно»);
}
else
{
Console.WriteLine(«Ни одно условие неверно»);
}
I3.13. Даны вещественные положительные числа a, b, c, x, y. Выяснить, пройдет ли кирпич с ребрами a, b, c в прямоугольное отверстие со сторонами x и y. Просовывать кирпич в отверстие разрешается только так, чтобы каждое из его ребер было параллельно или перпендикулярно каждой из сторон отверстия.
int a, b, c, x, y;
Console.WriteLine(«Введите параметры кирпича!»);
Console.WriteLine(«Введите высоту кирпича:»);
a = Convert.ToInt32(Console.ReadLine());
while (a<=0)
{
Console.WriteLine("Ошибка!");
Console.WriteLine("Введите высоту кирпичаеще раз:");
a = Convert.ToInt32(Console.ReadLine());
}
Console.WriteLine("Введите ширину кирпича:");
b = Convert.ToInt32(Console.ReadLine());
while (b <= 0)
{
Console.WriteLine("Ошибка!");
Console.WriteLine("Введите ширину кирпича еще раз:");
b = Convert.ToInt32(Console.ReadLine());
}
Console.WriteLine("Введите длину кирпича:");
c = Convert.ToInt32(Console.ReadLine());
while (c <= 0)
{
Console.WriteLine("Ошибка!");
Console.WriteLine("Введите длину кирпича еще раз:");
c = Convert.ToInt32(Console.ReadLine());
}
Console.WriteLine("\nВведите параметры отверстия.\n");
Console.WriteLine("Введите высоту отверстия:");
x = Convert.ToInt32(Console.ReadLine());
while(x<=0)
{
Console.WriteLine("Ошибка");
Console.WriteLine("Введите высоту отверстия еще арз:");
x = Convert.ToInt32(Console.ReadLine());
}
Console.WriteLine("Введите ширину отверстия:");
y = Convert.ToInt32(Console.ReadLine());
while (y <= 0)
{
Console.WriteLine("Ошибка");
Console.WriteLine("Введите высоту отверстия еще арз:");
y = Convert.ToInt32(Console.ReadLine());
}
Console.WriteLine("Отлично!");
Console.WriteLine($"Высота кирпича — {a}, ширина — {b}, длина — {c}.");
Console.WriteLine($"Высота отверстия — {x}, ширина — {y}.");
if (b < x && c < y)
{
Console.WriteLine("Кирпич пройдет в отверстие любой стороной.");
}
else if (a < x && c < y)
{
Console.WriteLine("Кирпич проходит в отверстие лицевой стороной.");
}
else if (a < x && b < y)
{
Console.WriteLine("Кирпич проходит в отверстие боковой(наименьшая плоскость) стороной.");
}
else
Console.WriteLine("Кирпич не проходит в отверстие.");
Это к 3.13
int a, b, c, x, y;
Console.WriteLine(«Введите параметры кирпича!»);
Console.WriteLine(«Введите высоту кирпича:»);
a = Convert.ToInt32(Console.ReadLine());
while (a<=0)
{
Console.WriteLine("Ошибка!");
Console.WriteLine("Введите высоту кирпичаеще раз:");
a = Convert.ToInt32(Console.ReadLine());
}
Console.WriteLine("Введите ширину кирпича:");
b = Convert.ToInt32(Console.ReadLine());
while (b <= 0)
{
Console.WriteLine("Ошибка!");
Console.WriteLine("Введите ширину кирпича еще раз:");
b = Convert.ToInt32(Console.ReadLine());
}
Console.WriteLine("Введите длину кирпича:");
c = Convert.ToInt32(Console.ReadLine());
while (c <= 0)
{
Console.WriteLine("Ошибка!");
Console.WriteLine("Введите длину кирпича еще раз:");
c = Convert.ToInt32(Console.ReadLine());
}
Console.WriteLine("\nВведите параметры отверстия.\n");
Console.WriteLine("Введите высоту отверстия:");
x = Convert.ToInt32(Console.ReadLine());
while(x<=0)
{
Console.WriteLine("Ошибка");
Console.WriteLine("Введите высоту отверстия еще арз:");
x = Convert.ToInt32(Console.ReadLine());
}
Console.WriteLine("Введите ширину отверстия:");
y = Convert.ToInt32(Console.ReadLine());
while (y <= 0)
{
Console.WriteLine("Ошибка");
Console.WriteLine("Введите высоту отверстия еще арз:");
y = Convert.ToInt32(Console.ReadLine());
}
Console.WriteLine("Отлично!");
Console.WriteLine($"Высота кирпича — {a}, ширина — {b}, длина — {c}.");
Console.WriteLine($"Высота отверстия — {x}, ширина — {y}.");
if (b < x && c < y)
{
Console.WriteLine("Кирпич пройдет в отверстие любой стороной.");
}
else if (a < x && c < y)
{
Console.WriteLine("Кирпич проходит в отверстие лицевой стороной.");
}
else if (a < x && b < y)
{
Console.WriteLine("Кирпич проходит в отверстие боковой(наименьшая плоскость) стороной.");
}
else
Console.WriteLine("Кирпич не проходит в отверстие.");
Даны вещественные числа a, b, c (a не равно 0). Решить уравнение ax2 + bx + c = 0 . В числе возможных вариантов учесть вариант равенства корней уравнения.
using System;
using System.Linq;
namespace c_sharp_practice
{
class Program
{
static double X1(int a,int b,int c)
{
double x1 = ((-1 * b) + Math.Sqrt(b * b — (4 * a * c))) / (2 * a);
return x1;
}
static double X2(int a, int b, int c)
{
double x2 = ((-1 * b) — Math.Sqrt(b * b — (4 * a * c))) / (2 * a);
return x2;
}
static void Main(string[] args)
{
Console.WriteLine(«ur x1 is :» + X1(1,-1,-6));
Console.WriteLine(«ur x2 is : » + X2(1,-1,-6));
}
}
}
I3.9. Даны вещественные числа a, b, c (a не равно 0). Решить уравнение ax2 + bx + c = 0 . В числе возможных вариантов учесть вариант равенства корней уравнения.
using System;
using System.Linq;
namespace c_sharp_practice
{
class Program
{
static double X1(int a,int b,int c)
{
double x1 = ((-1 * b) + Math.Sqrt(b * b — (4 * a * c))) / (2 * a);
return x1;
}
static double X2(int a, int b, int c)
{
double x2 = ((-1 * b) — Math.Sqrt(b * b — (4 * a * c))) / (2 * a);
return x2;
}
static void Main(string[] args)
{
Console.WriteLine(«ur x1 is :» + X1(1,-1,-6));
Console.WriteLine(«ur x2 is : » + X2(1,-1,-6));
}
}
}
Задачи 22, 23
int num;
byte a, b, c, d, s;
do
{
Console.WriteLine(«Введите 4-значное число!»);
num = Convert.ToInt32(Console.ReadLine());
} while ((num 10000));
a = (byte)(num / 1000);
b = (byte)(num / 100 % 10);
c = (byte)(num % 100 / 10);
d = (byte)(num % 10);
s = 0;
if (a == b) { s++; }
if (a == c) { s++; }
if (a == d) { s++; }
if (b == c) { s++; }
if (b == d) { s++; }
if (c == d) { s++; }
if (s == 3)
{
Console.WriteLine(«Это число содержит три одинаковые цифры!»);
}
if (s == 0)
{
Console.WriteLine(«Это число содержит четыре разные цифры!»);
}
Console.ReadKey();
I3.11.
static public void Main(string[] args)
{
Console.WriteLine(«Введите длину одной стороны конверта в см»);
double a = Convert.ToDouble(Console.ReadLine());
Console.WriteLine(«Введите длину другой стороны конверта в см»);
double b = Convert.ToDouble(Console.ReadLine());
double d = (a + b) * 2;
double perim;
Sum(10, 15, out perim);
if (perim >= d — 0.1)
{
Console.WriteLine($»открытка с периметром {d} входит в конверт с периметром {perim} «);
}
else
{
Console.WriteLine(«конверт не входит входит»);
}
}
static void Sum (double x, double y, out double perim)
{
perim = (x + y) * 2;
}
I3.2. Даны три вещественных числа a, b, c. Проверить:
а) выполняется ли неравенство a < b a > c.
double a, b, c;
Console.WriteLine(«введите 1 число»);
Console.WriteLine(«введите 2 число»);
Console.WriteLine(«введите 3 число»);
a = Convert.ToDouble(Console.ReadLine());
b = Convert.ToDouble(Console.ReadLine());
c = Convert.ToDouble(Console.ReadLine());
if (a < b)
{
if (b a)
{
if (a > c)
{
Console.WriteLine(«второе условие выпоняется»);
}
else
Console.WriteLine(«второе условие не выполняется»);
}
else Console.WriteLine(«второе условие не выполняется»);
double a, b, c;
Console.WriteLine(«введите 1 число»);
Console.WriteLine(«введите 2 число»);
Console.WriteLine(«введите 3 число»);
a = Convert.ToDouble(Console.ReadLine());
b = Convert.ToDouble(Console.ReadLine());
c = Convert.ToDouble(Console.ReadLine());
if (a < b)
{
if (b a)
{
if (a > c)
{
Console.WriteLine(«второе условие выпоняется»);
}
else
Console.WriteLine(«второе условие не выполняется»);
}
else Console.WriteLine(«второе условие не выполняется»);
I3.2. Даны три вещественных числа a, b, c. Проверить:
а) выполняется ли неравенство a < b < c; б) выполняется ли неравенство b > a > c.
Алина, верно, чуть с поправками (Ваш ответ исказился при вставке в комментарий, такое бывает).
I3.27. Дано целое число k (1 <= k <= 365). Определить, каким будет k-й день года: выходным (суббота и воскресенье) или рабочим, если 1 января — понедельник.
Верно, с косметическими правками.
I3.28.Даны два прямоугольника, стороны которых параллельны или перпендикулярны осям координат. Известны координаты левого нижнего угла каждого из них и длины их сторон. Один из прямоугольников назовем первым, другой — вторым.
а) Определить, принадлежат ли все точки первого прямоугольника второму.
б) Определить, принадлежат ли все точки одного из прямоугольников другому.
в) Определить, пересекаются ли эти прямоугольники.
Руслан! Приложите результаты тестирования. все желающие — присоединяйтесь.
I3.15.Дано двузначное число. Определить:
а) входит ли в него цифра 3;
б) входит ли в него цифра а.
Руслан!
Отличное решение с использованием метода класса String. Успехов!
I3.21. Дано натуральное число n (n <= 9999). Выяснить, является ли оно палиндромом («перевертышем») с учетом четырех цифр, как, например, числа 7777, 8338, 0330 и т. п. (Палиндромом называется число, десятичная запись которого читается одинаково слева направо и справа налево). У меня тут возникли проблемы или с пониманием самих условий задачи или с решением. n - это четырехзначное число или имеется ввиду от 1 до 9999? Если имеется ввиду, что это четырехзначное число, то код гораздо проще, а если от 1 до 9999, то тогда так:
Андрей!
Уточним условие: натуральное число от 1: 1, 2, 3, … Число 9999 — максимальное четырехзначное. При вводе 0012 мы получим все равно n=12 (не значащие нули будут отброшены).
Ваше решение (чуть исправил) — верное, кроме нулей впереди.
Другой способ: преобразовать в строку и проверить на палиндром — универсально и короче, тогда и нули проверятся.
I3.10. Даны вещественные положительные числа a, b, c, d. Выяснить, можно ли прямоугольник со сторонами a, b уместить внутри прямоугольника со сторонами c, d так, чтобы каждая из сторон одного прямоугольника была параллельна или перпендикулярна каждой стороне второго прямоугольника.
p.s Я сильно сомневаюсь в правильности кода, хотя после написания даже нашел аналогичную программу на паскале и проверил:
Ваши сомнения не напрасны.
Пусть (a,b)=(3,4), (c,d)=(5,2). У Вас будет ответ — да, а по смыслу — нет.
То есть, как минимум, необходимо условие заменить на:
вместо выделенного в тексте.
А для учета возможности поворота на 90 градусов полезно написать:
- это главное в алгоритме!
I3.4. Определить, верно ли, что при делении неотрицательного целого числа a на положительное число b получается остаток, равный одному из двух заданных чисел c или d.
Верно.
I3.3. Определить, является ли число а делителем числа b или, наоборот, число b делителем числа а. Ответом должны служить сообщения «Да, одно из чисел является делителем другого» или «Нет, ни одно из чисел не является делителем другого».
Верно.
I3.1 Проверить, принадлежит ли число, введенное с клавиатуры, интервалу (–5, 3).
Юлия! Верно, если границы -5, 3 входя в допустимый интервал [-5,3].
Если открытый интервал (-5,3), то:
if (num > -5 && num < 3) Согласны?