Петр - любитель футбола. Всю свою жизнь он мечтал посещать матчи чемпионатов мира, но билеты были слишком дорогими для его скромного бюджета. К счастью, в этом
году, за отличные результаты в обучении, Петр получил премию в сумме S lei, что позволяет
ему посетить, по крайней мере, нескоьлко футбольных матчей этго зрелищного мероприятия.
Известно, что на чемпионате мира будут сыграны n матчей, которые, в учебных целях
обозначены через 1, 2, 3, ... i, ... n. В общем случая, стоимости билетов на различные матчи
могут и не совпадать. Обозначим через стоимость билета на i-ый матч.
Петр хотел бы узнать количество всех возможных расхода имеющихся у
него денег путем покупки билетов на футбольные матчи. Он не не собирается потратить в
обязательном порядке все деньги или посетить в объязательном порядке определенное число
матчей.
решите на языке паскаль
Алгоритм к сожалению занял у меня много строк.
using System.Linq;//Для Min и Max
namespace Answer//ответ
{
class Program//Класс программы
{
static void Main()//Точка входа в программу
{
int Number = 0;//Число
char[] Temp;//Временная, вс переменная
int NumeralMinPosition = 0;//Позиция минимальной цифры в числе
int NumeralMaxPosition = 0;//Позиция максимальной цифры в числе
string Str = "";//Строка
int Numeral0, Numeral1, Numeral2, Numeral3;//Цифры
int NumeralMin;//Минимальная цифра
int NumeralMax;//Максимальная цифра
//Random Rand = new Random();//Создаем генератор случайных чисел
//Number = Rand.Next(1000, 9999);//Генерируем случайное четырехзначное число
//-> Стоит придумать это число самому
//Алгоритм не будет работать если выпадет число
//-> к примеру 8888
Number = 8956;//Указываем значение для числа
//Преобразуем число в строку, а затем в char
Temp = Number.ToString().ToCharArray();
Console.WriteLine(Number);//Выводим число
//Разбираем число на цифры
Numeral0 = int.Parse(Temp[0].ToString());
Numeral1 = int.Parse(Temp[1].ToString());
Numeral2 = int.Parse(Temp[2].ToString());
Numeral3 = int.Parse(Temp[3].ToString());
string Numerals = $"{Numeral0} {Numeral1} {Numeral2} {Numeral3}";
var Massive = Numerals.Split(" ");
//Выводим результат
Console.WriteLine(Numerals);
//Ищем минимальную цифру
NumeralMin = int.Parse(Massive.Min());
//Ищем максимальную цифру
NumeralMax = int.Parse(Massive.Max());
//Вычисляем позицию минимальной цифры
if (Numeral0 == NumeralMin) NumeralMinPosition = 0;
else if (Numeral1 == NumeralMin) NumeralMinPosition = 1;
else if (Numeral2 == NumeralMin) NumeralMinPosition = 2;
else if (Numeral3 == NumeralMin) NumeralMinPosition = 3;
//Вычисляем позицию максимальной цифры
if (Numeral0 == NumeralMax) NumeralMaxPosition = 0;
else if (Numeral1 == NumeralMax) NumeralMaxPosition = 1;
else if (Numeral2 == NumeralMax) NumeralMaxPosition = 2;
else if (Numeral3 == NumeralMax) NumeralMaxPosition = 3;
//Подводим итог
Temp[NumeralMinPosition] = char.Parse(NumeralMax.ToString());//Ставим макс. цифру на место минимальной
Temp[NumeralMaxPosition] = char.Parse(NumeralMin.ToString());//Став мин. цифру на место максимальной
//Выводим результаты
Console.WriteLine($"Цифры: {NumeralMin} и {NumeralMax} - сменены местами!");
string Result = new string(Temp);
Console.WriteLine(Result);
}
};
}
using System;//Для Random()
class Program//Класс программы
{
private int[] Massive = new int[3];//Создаем массив случайных чисел
private string Result = "";//Результат выполнения программы
private int Count = 0;
string Operation()//Функция выполняющая нужную операцию
{
Random Rand = new Random();//Создаем генератор случайных чисел
//Генерируем три случайных числа и записываем их в массив
Massive[0] = Rand.Next(10);
Massive[1] = Rand.Next(10);
Massive[2] = Rand.Next(10);
//Выводим сгенерированные числа
Console.WriteLine(Massive[0]);
Console.WriteLine(Massive[1]);
Console.WriteLine(Massive[2]);
//Вычисляем количество чисел, которые меньше 5
if (Massive[0] < 5) Count += 1;
if (Massive[1] < 5) Count += 1;
if (Massive[2] < 5) Count += 1;
//Делаем выводы
if (Count == 2)
{
Result = "yes";
}
else
{
Result = "no";
}
return Result;//Возвращаем результат
}
public void Start()//Начало выполнения программы
{
//Вызываем нашу функцию чтобы отобразить результат
Console.WriteLine(Operation());
}
};
namespace Answer
{
class Start
{
static void Main()//Точка вхрда в программу
{
Program App = new Program();//Создаем обьект класса
App.Start();//Вызываем метод класса
}
};
}