Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
техпро лр3.doc
Скачиваний:
2
Добавлен:
25.09.2019
Размер:
122.88 Кб
Скачать

Задание №1

Задачи на использование одномерных целочисленных массивов . Условие вида "дан массив" означает, что пользователем вводится величина размерности и все элементы массива с клавиатуры. Осуществить ввод необходимых данных, выполнить реализацию алгоритма, обеспечить вывод полученных результатов. Для решения задачи предварительно составляется блок-схема. Если по ходу решения задачи требуется создание дополнительных массивов, размерность которых изначально неизвестна, необходимо выполнить предварительную обработку исходного массива, для выяснения размерности вновь создаваемого. Не допускается использование операторов, прерывающих ход программы (breakgoto). Ввод массивов, обработка и вывод результатов реализуется отдельными методами .

1. Даны два массива a и b одинакового размера n. Сформировать новый массив c того же размера, каждый элемент которого равен максимальному из элементов массивов a и b с тем же индексом.

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

namespace Lab3_zadanie_1

{

class Program

{

static void MassivC(Int32[] A, Int32[] B, Int32[] K, Int32 N)

{

Int32 i;

string s;

for (i = 0; i < N; i++)

{

Console.Write("A[{0}]=", i + 1);

s = Console.ReadLine();

A[i] = Convert.ToInt32(s);

}

Console.Write("\n");

for (i = 0; i < N; i++)

{

Console.Write("B[{0}]=", i + 1);

s = Console.ReadLine();

B[i] = Convert.ToInt32(s);

if (A[i] > B[i])

K[i] = A[i];

else

K[i] = B[i];

}

Console.Write("\n");

for (i = 0; i < N; i++)

Console.Write("C[{0}]={1}\t", i + 1,K[i]);

}

static void Main(string[] args)

{

Int32 N;

Console.Write("Введите N\n");

N = Convert.ToInt32(Console.ReadLine());

if (N <= 0)

{

Console.Write("Ошибка");

return;

}

Int32[] A = new Int32[N], B = new Int32[N], C = new Int32[N];

MassivC(A, B, C, N);

Console.ReadKey();

}

}

}

Задание №2

Задачи на исследование серий в одномерных целочисленных массивах . Условие вида "дан массив" означает, что пользователем вводится величина размерности и все элементы массива с клавиатуры. Осуществить ввод необходимых данных, выполнить реализацию алгоритма, обеспечить вывод полученных результатов. Для решения задачи предварительно составляется блок-схема. Если по ходу решения задачи требуется создание дополнительных массивов, размерность которых изначально неизвестна, необходимо выполнить предварительную обработку исходного массива, для выяснения размерности вновь создаваемого. Не допускается использование операторов, прерывающих ход программы (breakgoto). Ввод массивов, обработка и вывод результатов реализуется отдельными методами .

1 .Дан целочисленный массив A размера N. Назовем серией группу подряд идущих одинаковых элементов, а длиной серии — количество этих элементов (длина серии может быть равна 1). Сформировать два новых целочисленных массива B и C одинакового размера, записав в массив B длины всех серий исходного массива, а в массив C — значения элементов, образующих эти серии.

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

namespace Lab3_zadanie_2

{

class Program

{

static void Seriya(Int32[] A, Int32 N)

{

Int32 i, j=0, k=1;

string s;

Int32[] B = new Int32[N], C = new Int32[N];

for (i = 0; i < N; i++)

{

Console.Write("A[{0}]=", i + 1);

s = Console.ReadLine();

A[i] = Convert.ToInt32(s);

}

for (i = 0; i < N-1; i++)

if (A[i+1] == A[i])

k++;

else

{

B[j] = k;

C[j] = A[i];

k=1;

j++;

}

B[j] = k;

C[j] = A[N-1];

Console.Write("\n");

for (i = 0; i <= j; i++)

Console.Write("B[{0}]={1}\t", i + 1,B[i]);

Console.Write("\n");

for (i = 0; i <= j; i++)

Console.Write("C[{0}]={1}\t", i + 1,C[i]);

}

static void Main(string[] args)

{

Int32 N;

string s;

Console.Write("Введите N\n");

s = Console.ReadLine();

N = Convert.ToInt32(s);

if (N <= 0)

{

Console.Write("Ошибка");

return;

}

Int32[] A = new Int32[N];

Seriya(A, N);

Console.ReadKey();

}

}

}