>//перевіряємо на схожість цифри (!=a2 amp; amp;//якщо перша цифра не дорівнює другій І!=a3 amp; amp;//якщо перша цифра не дорівнює третьому І!=a4 amp; amp;//якщо перша цифра не дорівнює четвертій І!=a3 amp; amp;//якщо друга цифра не дорівнює третьому І!=a4 amp; amp;//якщо друга цифра не дорівнює четвертій І!=a4 //якщо третя цифра не дорівнює четвертій
)
{. WriteLine () ;. Write (i);//виводимо число на екран=i;
}
}. WriteLine ();
//будуємо гістограмму.WriteLine ( Висновок останнього числа у вигляді гістограми );
int p=1000, w; (int j=0; j lt; 4; j ++)
{= t/p; (int jj=0; jj lt; w; jj ++). Write ( * );=t% p;=p/10; .WriteLine ( + w);
}
Console.ReadKey ();
}
}
}
1.6 Результат машинного тестування програми
Виведення всіх чотиризначних натуральних чисел, в записі яких немає однакових цифр. Висновок останнього числа у вигляді гістограми
Малюнок 1
2. ЗАВДАННЯ №2
2.1 Формулювання завдання
Дано чотири матриці розміру m * n. Якщо елементи, які стоять на однакових позиціях у цих матрицях, дорівнюють - помістити їх в нову матрицю на відповідні позиції. Інші елементи нової матриці прирівняти до нуля. Нормалізувати нової матриці.
2.2 Специфікація завдання
Вхідні дані:
- число m;
- число n;
Вихідні дані:
нова матриці mnew [i, j];
- найбільший елемент в матриці max;
нормалізована матриця mnew1 [i, j];
2.3 Математична постановка задачі
У таблиці 2 наведено ряд змінних, які мають вихідні дані та результати роботи програми. Цей ряд буде доповнений на стадії розробки алгоритму. Мінлива M - двовимірний масив (матриця), елементи якого будуть міняти індекси по ходу роботи програми, тобто положення елементів в матриці буде змінюватися.
Загальний опис алгоритму. Користувач вводить з клавіатури 4 матриці розмірністю рядків n і стовпців m. Потім масив M1, M2, M1, M4 (матриці) розміром mxn заповнюється випадковим чином. Якщо елементи, які стоять на однакових позиціях у цих матрицях, дорівнюють - помістити їх в нову матрицю (Mnew) на відповідні позиції. Інші елементи нової матриці прирівняти до нуля. Для нормалізації матриці необхідно знайти найбільший елемент (max) в новій матриці (Mnew) і розділити його на кожен елемент в новій матриці.
Таблиця 2 - Характеристика змінних
ІмяСмисл переменнойНазначеніеОграніченіяnРазмер матріциІсходнаяЦелий тип даннихmРазмер матріциІсходнаяЦелий тип даннихm1Ісходний массівРезультатm2Ісходний массівРезультатm3Ісходний массівРезультатm4Ісходний массівРезультатMnewНовая матріцаРезультатmaxНаібольшій елемент у новій матріцеРезультатMnew1Нормалізованная матріцаРезультатiСчётчік ціклаПромежуточнаяjСчётчік ціклаПромежуточнаяrСчётчік ціклаПромежуточная
2.4 Схема алгоритму. Опис
Схема алгоритму містить наступні типові структурні елементи: зовнішній цикл і вкладені одна в одну структури розгалуження.
У першу чергу користувач вводить з клавіатури чотирьох матриці з m стовпців і n рядків. Потім за допомогою методу Next об'єкта r - екземпляра класу Random масив M1, M2, M1, M4 заповнюється випадковим чином у вкладеному циклі.
Далі над матрицями проводиться наступні дію:
Якщо елементи, які стоять на однакових позиціях у цих матрицях, дорівнюють - помістити їх в нову матрицю (Mnew) на відповідні позиції. Інші елементи нової матриці прирівняти до нуля.
Для того щоб нормалізувати матрицю Нам необхідно знайти найбільший елемент в новій матриці. Для цього ми створюємо ще один цикл, де виконується умова: якщо елемент масиву більше max, то записуємо це значення в max. Потім ми кожен елемент нової матриці (Mnew) ділимо на найбільший елемент в матриці (max). Результат виводимо на екран.
2.5 Текст програми і схема алгоритму
System; System.Collections.Generic; System.Linq; System.Text; ConsoleApplication2
{Program
{void Main (string [] args)
{. WriteLine ( Введення ...