17113

Формування робочих масивів за допомогою операцій селекції вихідного масиву

Лабораторная работа

Информатика, кибернетика и программирование

Лабораторна робота № 22 Тема: Формування робочих масивів за допомогою операцій селекції вихідного масиву Ціль роботи: вивчити і навчитися застосовувати обробку масивів по заданих логічних умовах формування нових масивів. Обладнання: ПКПО Borland C Теоретичні відо

Украинкский

2013-06-29

74 KB

1 чел.

Лабораторна робота № 22

Тема: Формування робочих масивів за допомогою операцій селекції вихідного масиву

Ціль роботи: вивчити і навчитися застосовувати обробку масивів по заданих логічних умовах, формування нових масивів.

Обладнання: ПК,ПО Borland C++

Теоретичні відомості

Дивися теоретичні відомості по попередній роботі.

Приклад

/*    ЗАНЯТТЯ N 10

  Розробив Петров Ю.В.

  Оголосити масиви заданої розмірності, виконати їхній

  ініціалізацію з застосуванням функції random() і явно.

  Одержати доступ до елементів масивів з використанням

  операторів організації циклу. Переписати позитивні

  елементи масиву x[1],x[2],...,x[N] у масив y[t], а

  негативні - у масив z[p]. Елементи в масивах y[t]

  і z[p] розташовувати підряд, елементи масиву y1[t]

  розрахувати для позитивних x[і] по формулі

  y1[t]=y1[t]+2*exp(b*y[t]-y[t]*y[t]),де b=N/5    */

 #include <stdlib.h>

 #include <stdio.h>

 #include <conio.h>

 #include <math.h>

 # define N 20

 main()

 { clrscr();

   randomize();

   int і,t=0,p=0,b=N/5;

   int x[N],y[N],z[N]; //Оголошення одномірного масиву (вектора)

   float y1[N]={2.3,3.4,4.0,5.2,6.6,7.9,8.34,9.8,10.4,11.2,\

   10.1,9.9,8.7,7.5}; //Ініціалізація перших 14, інші -0

   printf("\nвывод елементів вихідного масиву y1[ ]\n");

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

     {printf(" y1[%2d]=%4.1f",i+1,y1[i]);

      if ((i+1)%5==0) printf("\n");

     }

   printf("\nинициализация одномірного масиву x[N]\n");

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

     { x[і]=random(40)-20;

printf(" x[%2d]=%2d ",i+1,x[i]);    // виведення елементів

if ((i+1)%5==0) printf("\n");       //масиву x[ ]

 if (x[i]>=0)            //Вибір позитивних значень

   { y[t]=x[i];    //Розрахунок елементів масиву y1[ ]

    y1[t]=y1[t]+2*exp(b*y[t]-y[t]*y[t]); t++;

   }

else {z[p]=x[i]; p++;} //Вибір негативних значень

     }

   printf("\nвывод елементів масиву y[ ]>0\n");

   i=0;

   while ( i<t )

     { printf(" y[%2d]=%2d ",i+1,y[i]);

if ((i+1)%5==0) printf("\n");

i++;

     }

   printf("\n");

   printf("\nвывод елементів масиву y1[ ] після розрахунку\n");

   i=0;

   do

     { printf(" y1[%2d]=%3.2f",i+1,y1[i]);

if ((i+1)%5==0) printf("\n");

i++;

      } while ( i<t );

   printf("\n");

   printf("\nвывод елементів масиву z[ ]<0\n");

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

     { printf(" z[%2d]=%2d ",i+1,z[i]);

if ((i+1)%5==0) printf("\n");

     }

   getch();

   return 1;

 }

/*   виведення елементів вихідного масиву y1[ ]

 y1[ 1]= 2.3 y1[ 2]= 3.4 y1[ 3]= 4.0 y1[ 4]= 5.2 y1[ 5]= 6.6

 y1[ 6]= 7.9 y1[ 7]= 8.3 y1[ 8]= 9.8 y1[ 9]=10.4 y1[10]=11.2

 y1[11]=10.1 y1[12]= 9.9 y1[13]= 8.7 y1[14]= 7.5 y1[15]= 0.0

 y1[16]= 0.0 y1[17]= 0.0 y1[18]= 0.0 y1[19]= 0.0 y1[20]= 0.0

    Ініціалізація одномірного масиву x[N]

 x[ 1]=  8  x[ 2]= 10  x[ 3]=- 7  x[ 4]= 13  x[ 5]=- 1

 x[ 6]=-14  x[ 7]=  5  x[ 8]= 17  x[ 9]=-14  x[10]=-19

 x[11]= 13  x[12]=  8  x[13]=-10  x[14]=-16  x[15]=  5

 x[16]=  9  x[17]=-11  x[18]=-12  x[19]=-16  x[20]=- 3

    виведення елементів масиву y[ ]>0

 y[1]= 8    y[2]=10    y[3]=13    y[4]= 5   y[5]=17

 y[6]=13    y[7]= 8    y[8]= 5    y[9]= 9

    виведення елементів масиву y1[ ] після розрахунку

 y1[1]=2.30 y1[2]=3.40 y1[3]=4.00 y1[4]=5.21 y1[5]=6.60

 y1[6]=7.90 y1[7]=8.34 y1[8]=9.81 y1[9]=10.40

     виведення елементів масиву z[ ]<0

 z[ 1]=- 7  z[ 2]=- 1  z[ 3]=-14  z[ 4]=-14  z[ 5]=-19

 z[ 6]=-10  z[ 7]=-16  z[ 8]=-11  z[ 9]=-12  z[10]=-16

 z[11]=- 3   

                                    */

Приклад прогами на С++

Скласти програму для обробки масивів відповідно до індивідуального завдання приведеному в таблиці 10.1.

Вар.

Умова задачі

6

Дано масив X(25). Сформувати новий масив з чисел вихідного, лежачих в інтервалі [-3,7]

#include<iostream.h>

int mas(double xk[10],double yk[10])

{int n,j;

for(n=0;n<10;n++)

{if((xk[n]>=(-3))&&(xk[n]<=7)) {yk[j]=xk[n]; j++;}

}

return j;

}

void main()

{int i,t;

double x[10],y[10],s;

cout<<"input array x:\n";

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

cin>>x[i];

s=1.0;

t=mas(x,y);

cout<<"y:\n";

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

cout<<y[i]<<"\n";

}

Хід роботи

1.Вивчити теоретичні відомості

2.Відповідно до індивідуального завдання, на основі програми попередньої роботи розробити алгоритм, що забезпечує формування робочих масивів по заданих логічних умовах. Операції з масивами винести в окрему функцію.

3.Розробити програму, набрати і налагодити програму на комп'ютері.

4.Вивчити роботу операторів.

5.Одержати результати.

6.Оформити звіт.

Підготуватися до захисту лабораторної роботи, вивчивши контрольні питання по даній темі.

Вимоги до змісту звіту приведені в лабораторній   роботі   №1.

Індивідуальне завдання

Скласти програму для обробки масивів відповідно до індивідуального завдання приведеному в таблиці 10.1.

Таблиця 10.1 - Індивідуальне завдання

Вар.

Умова задачі

1

Дано масив X(15). Сформувати новий масив з парних чисел вихідного

2

Дано масив X(25). Сформувати новий масив з непарних чисел вихідного

3

Дано масив D(15). Сформувати новий масив із кратних 3 чисел вихідного

4

Дано масив A(10). Сформувати новий масив з негативних чисел вихідного

5

Дано масив Z(15). Сформувати новий масив з позитивних парних чисел вихідного

6

Дано масив X(25). Сформувати новий масив з чисел вихідного, лежачих в інтервалі [-3,7]

7

Дано масив Y(10). Сформувати новий масив з непарних позитивних чисел вихідного

8

Дано масив D(12). Сформувати новий масив з позитивних кратних 3 чисел вихідного

9

Дано масив A(8). Сформувати новий масив з негативних парних чисел вихідного

10

Дано масив C(15). Сформувати новий масив з великих 8 чисел вихідного

11

Дано масив B(21). Сформувати новий масив із кратних 4 чисел вихідного

12

Дано масив A(12). Сформувати новий масив з негативних непарних чисел вихідного

13

Дано масив X(8). Сформувати новий масив з негативних не кратних 3 чисел вихідного

14

Дано масив G(9). Сформувати новий масив з парних чисел вихідного масиву, що коштують на непарних місцях

15

Дано масив Y(15). Сформувати новий масив з непарних, кратних 3 чисел вихідного

16

Дано масив A(18). Сформувати новий масив з непарних, кратних 5 чисел вихідного

17

Дано масив Z(10). Сформувати новий масив з парних чисел вихідного, лежачих в інтервалі [1,12]

18

Дано масив A(11). Сформувати новий масив з непарних чисел вихідного, лежачих в інтервалі [-3,15]

19

Дано масив B(10). Сформувати новий масив з номерів негативних парних чисел вихідного

20

Дано масив A(8). Сформувати новий масив з номерів негативних непарних чисел вихідного

21

Дано масив C(12). Сформувати новий масив з негативних чисел вихідного, що коштують на парних місцях

22

Дано масив F(13). Сформувати новий масив з негативних чисел вихідного, що коштують на непарних місцях

23

Дано масив H(12). Сформувати новий масив з позитивних чисел вихідного, що коштують на парних місцях

24

Дано масив V(19). Сформувати новий масив з негативних чисел вихідного, лежачих у діапазоні [-20,-5]

25

Дано масив N(11). Сформувати новий масив з негативних кратних 5 чисел вихідного

26

Дано масив K(15). Сформувати новий масив з позитивних чисел вихідного, що коштують на непарних місцях

27

Дано масив Y(11). Сформувати новий масив з негативних не кратних 5 чисел вихідного

28

Дано масив Z(14). Сформувати новий масив з позитивних кратних 5 чисел вихідного

29

Дано масив R(13). Сформувати новий масив з негативних кратних 10 чисел вихідного

30

Дано масив N(11). Сформувати новий масив з негативних кратних 8 чисел вихідного

Контрольні запитання

1.Як виробляється доступ до елементів масиву?

2.Яка кількість операторів циклу необхідно для обробки головної чи побічної діагоналі масиву?

3.Які методи сортування елементів Ви знаєте?

4.Чи можна використовувати покажчик на тип елементів масиву як ім'я масиву і що для цього необхідно?

5.Адреса якого елемента містить ім'я масиву?

6.Які класи пам'яті можна використовувати при оголошенні масиву?

7.Які класи пам'яті використовуються за замовчуванням?

8.Як розміщаються елементи масиву в пам'яті?

9.Як визначається кількість байтів, на яке зміщається покажчик індексного вираження?  Чи залежить зсув покажчика від типу елементів масиву?


 

А также другие работы, которые могут Вас заинтересовать

43214. Электропривод цепного транспортера 1.73 MB
  Вращающий момент с вала электродвигателя передается через упругую муфту с вогнутым профилем торообразной оболочки на быстроходный вал двухступенчатого цилиндрического редуктора. ВЫБОР ЭЛЕКТРОДВИГАТЕЛЯ Основными исходными данными для выбора электродвигателя являются мощность на выходном валу привода и частота вращения его вала между которыми существует связь: где: мощность на выходном валу привода кВт; окружная сила тяговое усилие кН; скорость ленты м с; Требуемая мощность электродвигателя где: требуемая мощность...
43215. Інформаційне та комунікаційне забезпечення, зв’язки з громадськістю в системі управлінської діяльності органу державної влади 38.05 KB
  Усі громадяни України, юридичні особи та державні органи мають право на інформацію. Але реалізація права на інформацію громадянами, юридичними особами і державою не повинна порушувати громадські, політичні, економічні, соціальні, духовні, екологічні та інші права, свободи і законні інтереси інших громадян, права та інтереси юридичних осіб.
43216. Проектирование редуктора вертолёта 1.14 MB
  Определение геометрических размеров передачи. Напряжение изгиба четвёртого колеса Проверочный расчет цилиндрических колёс на статическую прочность при перегрузке Выбор оптимального варианта из расчитанных передач Предварительное определение диаметров валов Предварительный подбор подшипников. Определение усилий в зацеплениях. Определение усилий в зацеплениях на второй передаче. Определение реакций в опорах валов Расчёт долговечности подшипников качения. Определение крутящих моментов на всех валах...
43217. Створення ПЗ для віртуального лабораторного стенду засобами LabVIEW 147 KB
  LabVIEW – це універсальне середовище для розробки систем збору, обробки даних та управління експериментом. Дане середовище має велику бібліотеку функцій, методів аналізу (спектральний та кореляційний аналіз, вейвлетний аналіз, методи фільтрації, статистична обробка та ін.), бібліотеки драйверів пристроїв, що відповідають найпоширенішим стандартам. Основою роботи в середовищі LabVIEW є графічне програмування з використанням блок-діаграм, що складаються з функціональних вузлів та зв’язків між ними). Всі дії зводяться до побудови структурної схеми програми в інтерактивній графічній системі з набором всіх необхідних бібліотечних образів, з яких збираються об’єкти.
43218. Реконструкция здания исторической застройки 99.5 KB
  Введение Реконструкция и обновление городской застройки и зданий стали в последние десятилетия одним из основных направлений архитектурностроительной науки что потребовало приобретения студентами соответствующих знаний и навыков закрепляемых в ходе курсовой работы по дисциплине Реконструкция зданий и сооружений. Реконструкция актуальна как для зданий исторической застройки с традиционными конструкциями так и для зданий массового строительства 19501960 гг. В связи с этим программа дисциплины предусматривает выполнение студентами двух...
43219. Реализация интерпретатора для модифицированной грамматики учебного языка MILAN 1.68 MB
  Position текущая позиция в строке просматриваемая лексическим анализатором; Number_String текущая строка программы просматриваемая лексическим анализатором; при любом условии любой символ. Семантические функции к Rсхеме лексического анализатора: y0: подготовка инициализация таблиц и переменных Position=0 Number_String=1; y1: чтение следующего символа программы на языке МИЛАН; y2: увеличение счётчика текущей позиции Position; y3: переход на новую строку в программе увеличение счётчика текущей строки и...
43220. Реконструкция зданий и сооружений 55.5 KB
  В тоже время здания возводились из капитально огнестойких и долговечных конструкций обеспечивающих срок службы зданий 100125 лет. Единственной рациональной альтернативной сносу являются модернизация и реконструкция рассматриваемых зданий методами градостроительного преобразования и переустройства которые должны быть произведены с учётом экономических социально функциональных технических эстетических и экологических...
43221. Четырех комнатный мансардный дом с подвалом 134.5 KB
  В этих целях основное внимание уделяется обеспечению своевременного ввода в действие основных фондов и производственных мощностей концентрации средств и ресурсов на важнейших стройках направлению капитальных вложений в первую очередь на техническое перевооружение и реконструкцию действующих предприятий и на завершение ранее начатых строек сокращению сроков строительства улучшению проектного дела осуществлению строительства по наиболее прогрессивным и экономичным проектам...
43222. Проектирование участка на базе станков с ЧПУ по изготовлению корпусных деталей 3.19 MB
  Целью данного дипломного проекта является проектирование участка на базе станков с ЧПУ по изготовлению корпусных деталей разработка операционного технологического процесса на выполнение операций применение полученных знаний за время обучения в университете.; tшт штучное время iой операции мин. Штучное время: где tО основное время; tВ вспомогательное...