Автор: Пользователь скрыл имя, 30 Января 2011 в 21:11, контрольная работа
Контрольная работа №2, Основы алгоритмизации и программирования, Задание №6 «Табулирование функций», Задание №7 «Подпрограммы», Задание №8 «Одномерные массивы», Задание №9 «Формирование массивов», Задание №10 «Операции с элементами массивов», Задание №11 «Работа со строками»
Таблица 3.2 - Исполнение алгоритма
namespace Labaratornay №8 «Одномерные массивы»
{
class Program
{
static void Main(string[] args)
{
int n = 6; // размерность массива
int[] a = new int[] { 3, 12, 2, -9, 4, -4 };// список инициализаторов
Console.WriteLine("Исходный массив: "); // вывод на экран перед массивом
for (int i = 0; i < n; ++i)
Console.Write("{0}\t", a[i]);
int num = 0; // задаем переменную с значение
0
for (int i = 0; i < n; i++) // циклический перебор значений
if (a[i] == i) // сценарий при совпадении номера элемента
{
num += a[i]; //сумма элементов массива номера которых совпадают со значением этого элемента
}
Console.WriteLine("Сумма
Console.ReadLine();
}
}
}
Задание №9 «Формирование массивов»
Задание | Получено программой |
000...000010...010010...010::: :::010...010000...000 |
000...000010...010010...010::: :::010...010000...000 |
Листинг 4
namespace Labaratornay №9
«Формирование массивов»
{
class Program
{
static void Main(string[] args)
{
const int m = 5, n = 6; // Зададим колличество строк и столбцов
int[,] a = new int[m, n]; // зададим матрицу по размеру
[m,n]
for (int i = 0; i < m; i++)
{
for (int j = 0; j < n; j++)
{
a[i, j] = Convert.ToInt32((j == 1 || j == n - 2) && i > 0 && i < m - 1);
// преобразуем к нужной нам матрице
}
}
Console.WriteLine("matrix: ");
for (int i = 0; i < m; ++i)
{
for (int j = 0; j < n; ++j)
Console.Write("\t" + a[i, j]); //выведм исходный массив
Console.WriteLine();
}
Console.ReadKey();
}
}
}
Задание №10 «Операции с элементами
массивов»
Задание №27. Определить
наименьший элемент каждой четной строки
матрицы.
Таблица 4.1 Система тестов
сгенерированная матрица | строка | минимальный элемент четной строки |
13
8 17
12 16 3 9 1 7 5 5 16 11 7 20 |
1
2 3 4 5 |
3 5 |
4 12
19
5 5 9 2 4 19 14 2 11 7 19 6 |
1
2 3 4 5 |
5 2 |
Листинг 5
namespace Labaratornay10
{
class Program
{
static void Main(string[] args)
{
int[,] a = new int[6,3]; // создаётся массив 6x3
Random rnd = new Random(); // переменная для генерации случайных чисел
for (int i = 0; i < a.GetLength(0); i++)
{
for (int j = 0; j < a.GetLength(1); j++)
{
a[i, j] = rnd.Next(1, 21); //заполнения случ. числами массива от 1 до 21
Console.Write("{0}\t", a[i, j]);// вывод массива на экран
}
Console.WriteLine();
}
Console.WriteLine("-----------
int min; // ввод переменной min
for (int i = 2; i < a.GetLength(0); i+=2)
{
min = int.MaxValue;
for (int j = 0; j < a.GetLength(1); j++)
{
if (min > a[i, j])
min = a[i, j];
}
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("stroka #{0}: min велечина - {1}", i, min);
//вывод минимального
элемента четной строки
}
Console.ReadLine();
}
}
}
Задание №11 «Работа со строками»
Задание №27. Проверить
одинаковое ли число открывающихся
и закрывающихся скобок в данной
строке.
Таблица 4.1 Система тестов
введенные данные | кол-во открывающихся скобок | кол-во закрывающихся скобок | одинаковое ли кол-во скобок |
Введем
строку
“комитета по внешним связям (КВС)” |
1 | 1 | Количество скобок одинаковое! |
Введем
строку
“Утверждено директором (Баронов В.С. (бывший зам.ОВ)” |
2 | 1 | Количество скобок разное! |
namespace Labaratornay11
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Введите строку");
int otk = 0, zak = 0; //вводим переменные otk и zak изначально они равны 0
string s; // вводим переменную последовательных знаков Юникода
s = Console.ReadLine(); //вводим строку
char[] a = s.ToCharArray(); //переводит строку в простые символы
for (int i = 0; i < a.Length; i++) // перебор заданной строки (массива)
// Length возвращает число элементов в строке
{
if (a[i] == '(')
{
otk++; // подсчет открытывающих скобок
}
}
for (int i = 0; i < a.Length; i++) // перебор заданной строки
{
if (a[i] == ')')
{
zak++; // подсчет закрывающих скобок
}
}
bool f = otk == zak;
//логический тип true или false если otk=zak то true если нет то false
if (f == true)
{
Console.Write("Количество скобок одинаковое!");
}
else if (f == false)
{
Console.Write("Количество
}
Console.ReadKey();
}
}
}
Информация о работе Основы алгоритмизации и программирования