Обявяване на едномерни

Array (масив) програмиране - подреден набор от еднакви елементи. Решетките са широко използвани за съхранение и обработка на информация хомогенна, например, маси, вектори, матрици и др ..

Всеки спектър елемент е еднозначно определена от име и индекс. име масив (ID) са избрани в съответствие със същите правила като за променливи. Индексите определят местоположението на елемента в масива. Например, векторни елементи имат един индекс - броя на реда; елементи на матриците и таблиците са с по два показателя: първата се посочва номера на реда, а втората - номера на колоната. Броят на индекси определя размери масив. Например, векторите в програми - това едномерни, матрица - двумерен. Засега ще бъдат разглеждани само едномерни.

Едномерен масив е обявено в програмата, както следва:

DATA_TYPE array_name [razmer_massiva];

--_ името на масива - е ID на масива. Типът данни определя типа на елемента е обявен масив. Razmer_massiva скоби определя броя на елементите на масива. За разлика от Pascal, C не е тестван в надхвърляне на масива, така че да се избегнат грешки в програмата, трябва да следвате размерите описани масиви.

име Array [znachenie_indeksa]

Стойностите му трябва да са в диапазона от нула до стойност, един по-малък от размера, посочен в описанието му, защото на езика C ++ номериране индекси винаги започват от нулата.

декларира масив наречен А, съдържаща 10 числа. А [0] - стойността на първия елемент А [1] - Второ, [9] - последната.

Ето някои примери за декларациите за масиви:

INT класове [125];

двойно вектор [1500];

Първият масив 20 съдържа N символи. Връзка елементи масив може да бъде N [0], N [1]. N [19].

Вторият масив съдържа 125 класове числа. Връзка елементи масив може да бъде класове [0], класове [1]. класове [124].

Трето масив 30 се състои от маса на реалните числа. Връзка елементи масив може да бъде маса [0], маса [1]. маса [1499].

В последния пример изброени само първите три елемента, съответно, а останалите до края на масива ще бъде равна на 0.

Примери на проблеми с използване на масиви

Проблем 1. Въведете 8-мерен масив от елементи в реално Memo и да се изчисли сумата на всички елементи на масива.

Пример форми с резултатите, показани на Фигура 1. В компоненти форма разположени Memo1, Edit1, етикет 1, Button1, BUTTON2, Button3. Бутоните "почистване" и "Изход" не виждат, тъй като техният код вече е бил използван в предишните теми.

Обявяване на едномерни

Фигура 1 - Форма програма

бутон невалидни fastcall TForm1 :: Button1Click (TObject * Sender) // «сума"

за (INT I = 0; и <8; i++) // создаем цикл для считывания каждого элемента массива. Еще //один вариант записи цикла такой: for (int i=0; i<=7; i++). На выбор один из двух //вариантов

сума + = A [Ь];> // добавят към сумата от I-ия елемент на масива, и завършени тялото цикъл

Edit1-> Текст = FormatFloat ( "0,000", сума);> // извежда сумата

2. Създаване на Задача двумерен масив от 15 елемента от формула Ai = LG (I) + TG (2 I). където I = 1, 2, 15 и да ги доведе до оформянето и определяне на минималния елемент и неговия сериен номер.

програма алгоритъм Схема и пример на формата с резултатите от формата, показани на фигури 2, 3 и 4. В компоненти форма разположени Memo1, Edit1, Button1, BUTTON2.

Обявяване на едномерни

Фигура 2 - Форма програма

поплавък А [15]; Int I; // декларира масива и индексът на нейните елементи. Прогласена бутоните

бутон невалидни fastcall TForm1 :: Button1Click (TObject * Sender) // «изчисляване вектор"

за (I = 0; и <15; i++) // цикл для создания массива

Memo1-> Lines-> Добавяне (FormatFloat ( "0,000", А [Ь]));> // извлече (добавяне) Брой // I-ия елемент в Memo масив

> // край на функционалните бутони

нищожен fastcall TForm1 :: Button2Click (TObject * Sender) // Бутон "Мин Element"

Int инд = 0; // декларира променлива за индекса и определя индекс на първия елемент

за (I = 1; и <15; i++) // создаем цикл для нахождения мин. элемента, но уже не с 0, а с 1, //т.к. значение первого элемента уже хранится в переменной min

> // зададена стойност на I-ия елемент на променливата минути, т.е. Сега-тото // елемент ще бъде минимално, и, съответно, минималната индекс напр. ще мога ли

Edit1-> Текст = FormatFloat ( "0,000", мин) + "индекс -" + IntToStr (инд + 1);> // // показва минимално елемент Edith заедно с индекс. Също така е възможно да се конструира индекс на // отделен Edith. Ние не се получи точно инд, инд + 1 и защото ние намерите индекс мин. елемент, но този индекс ovsky C ++ и недвижими индекс за 1 повече.

Обявяване на едномерни

Фигура 3 - схематичен за бутона "Изчисление вектор"

Обявяване на едномерни

Фигура 4 - схематичен за бутона "Мин елемент"

Проблем 3. Въведете масив от N цели числа на бележка. Всички странни елементи (. Не по значение индекс) за замяна на единици и дори елементи - нули.

Схема програма алгоритъм е показано на фигура 5.

нищожен fastcall TForm1 :: Button1Click (TObject * Sender)

Int N = StrToInt (Edit1-> текст); // определя размера на масива (N<=50)

за (INT I = 0; и

ако (V [Ь]% 2 == 0) // избран състояние паритет

// ако I-тия елемент - дори, е равно на 0

друго // иначе-ти елемент е равно на 1

Memo2-> Lines-> Добавяне (IntToStr (V [Ь]));> // извличат вече заменен с нов елемент бележка

За да се извлече променените елементи в бележката може да създаде отделна линия за резултатите от дейността си (което в повечето задачи направи), но тук може незабавно да изведем променени стойности в бележката в един цикъл, тъй като всички етапи на работата на програмата са направени за всеки елемент на масива.

Обявяване на едномерни

Фигура 5 - схема на програмата

Задача 4. Създаване на масив от N елементи (30) с формула VI = 3 COS (4i) + д -2К и ги извежда на проекта в компонент форма бележка. Намерете:

1) продуктът от нула във векторни елементи;

2) броят на отрицателните елементи на вектора;

3) сменяте първи елемент вектор с минимално

За постигане на целите за развитие на отделен бутон за изчисляване на конкретна задача. форма на проекта с резултатите от схемата и алгоритми за всички бутони са показани на фигури от 6 - 8.

Обявяване на едномерни

Фигура 6 - Форма програма

поплавък V [30]; Int I, N; // създаване на глобални променливи (UP бутон) до всички бутони // биха могли да използват тези променливи

// бутон невалидни fastcall TForm1 :: Button1Click (TObject * Sender) «Vector"

N = StrToInt (Edit1-> текст); // въведете броя на елементите масив

за (I = 0; и

Memo1-> Lines-> Добавяне (FormatFloat ( "0,000", о [Ь])); // изход за образуване

нищожен fastcall TForm1 :: Button2Click (TObject * Sender) // Бутон "" Работата на ненулевите елементи // "

за (I = 0; и

> // P натрупват в продукта от нула об [Ь]

Edit2-> Текст = FloatToStr (Р); // показване на резултата

нищожен fastcall TForm1 :: Button3Click (TObject * Sender) // Бутон "редица елементи <0»

за (I = 0; и

> // ако отрицателен елемент, к се увеличава с 1

Edit3-> Текст = IntToStr (кол); // показване на резултата

бутон невалидни fastcall TForm1 :: Button4Click (TObject * Sender) // «Пренареждане"

Int инд = 0; // И индекса нула

за (I = 1; и

мин = о [Ь]; >> // и неговата стойност.

= Темп об [0]; // температура се съхранява в променлива стойност на първия елемент

о [0] = мин; // На мястото на първия елемент ще бъде минимален елемент

о [инд] = температура; // минимум подходяща стойност на първия елемент (временни магазини)

за (I = 0; и

Обявяване на едномерни

Фигура 7 - схема на бутона "Вектор"

Обявяване на едномерни

Фигура 8 - схема за бутони: а) "Работата ..." б) "Размерът на ..."

1. Въведете масив от 11 числа чрез Memo. Намерете средната стойност на всички елементи.

2. Създаване на масив от 10 елемента с формулата: Bi =. Намерете максималния елемент.

3. Въведете масив от N цели числа, чрез бележка. Намерете броя на елементите, които са по-големи от 3.

4. Въведете масив от реални числа R чрез бележка. Ако някои от елементите на масив е 0 (ако приемем, че може да има само един елемент нула или изобщо) за показване на съобщение: "... индекс елемент е равно на 0". В противен случай, се появи съобщение: "Масивът на елементите не е нула!".

5 *. Създаване на масив от 25 елементи съгласно формулата: Fi =. Намери продукт на нечетни елементи (индекса, не по стойност). Замяна на максималния елемент масив на средната аритметична стойност на всички елементи и да доведе в резултат на масив в друг бележка.

Забележка. Odd елемент - елемент на математически индекси I = 1,3,5,7 ... 25.

И да ви ще пристигне със сила)