Предмет: Информатика, автор: 2006nazar2018

(C#!!!) Дано четырехзначное число ( Любое придумать можно ). Поменяйте местами наименьшую и
наибольшую цифры.
30 баллов ( решение в виде кода )


Greenow: с кодом не помогу, увы не знаю, но там есть система char,
Greenow: это символы, то есть мои слова, это картинки,
Greenow: а сами картинки подразделяются на char, и эти объекты можно записать в список,

Ответы

Автор ответа: bogdanovnikita737
0

Алгоритм к сожалению занял у меня много строк.

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);

}

};

}

Похожие вопросы
Предмет: Русский язык, автор: Аноним
Предмет: Қазақ тiлi, автор: Адилбек1111
Предмет: Математика, автор: belovd437
Предмет: Английский язык, автор: твоя4667