Студопедия — Пример. Задать массив из 5-ти элементов
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Пример. Задать массив из 5-ти элементов






Задать массив из 5-ти элементов. Найти произведение элементов массива, превышающих значение 1-го элемента. Переставить местами 1-ый и последний элементы массива. Вывести элементы массива в строку компоненты Memo.

Для выполнения задания необходимо выполнить следующие действия.

1. Поместить на форму компоненты: панели Panel1 (в верхней части экрана для ввода информации) и Panel2 (в нижней части для вывода информации) (страница Standard).

2. Для панелей задать свойство Caption – пустое (очистить место для вывода результата).

3. Разместить метки для панелей Label1 и Label2 (страница Standard).

4. Задать Caption для следующих объектов:

- Label1 – ввод массива (панель Panel1);

- Label2 – результаты (вывод результата в панель Panel2)

5. Разместить кнопку Button1 (страница Standard).

6. Установить для кнопки следующее свойство Caption – Вычислить.

7. Добавить компонент StringGrid1 и задать следующие свойства:

- ColCount – 5 (количество столбцов);

- FixedCols – 0 (количество фиксированных столбцов);

- RowCount – 1 (количество строк);

- DefaultRowHeight – 24 (высота строки);

- DefaultColWidth – 64 (ширина столбца).

8. Задать опции для редактирования информации (Options):

- Options.go.Editingtrue;

- Options.goTabstrue;

- Options.go.Alwaystrue.

Для вывода массива на экран будем использовать компоненту Memo1 (Многострочный редактор).

Управлять вычислением будет кнопка Button1.

Полученная форма будет иметь вид (рис. 1):

 

Рисунок 1 – Форма с размещенными объектами

 

Для кнопки Button1 необходимо создать обработчик события OnClick (нажатие кнопки).

Двойной щелчок на этой кнопке приводит к появлению на экране окна кода программы.

Курсор устанавливается в процедуру-обработчика события, которая должна иметь следующий вид:

procedure Tform1.Button1Click(Sender: Tobject);

Var

a: array[1..5] of integer; // описание массива а

pr, I, с: integer; // pr – переменная для вычисления произведения элементов массива, i – индекс элементов массива, с-переменная для перестановки местами 1-го и 5-го элементов массива

stroka: string;

begin

// ввод массива

// считаем, если ячейка пустая, то соответствующий элемент массива равен 0

for i: =1 to 5 do

if Length (StringGrid1.Cells[i-1, 0])< > 0

then a[I]: = StrToInt(StringGrid1.Cells[i-1, 0])

else a[I]: =0; // проверка наличия значения элемента массива в ячейке компоненты StringGrid1

// Обработка массива

Pr: =1;

for i: =1 to 5 do

if a[i]> a[1] then pr: =pr*a[i];

// вычисление произведения элементов массива

// вывод произведения элементов массива в заголовок панели Panel2

Panel2.Caption: =’Произведение элементов=’ +IntToStr(pr);

// перестановка местами 1-го и 5-го элементов массива

c: =a[1]; a[1]: =a[5]; a[5]: =c;

// вывод массива в строку

Stroka: =’ ’;

// в строку помещаем пробелы

Memo1.Lines.Add(‘Массив после обработки’);

for i: =1 to 5 do

stroka: =stroka+ IntToStr(a[i]);

Memo1.Lines.Add(stroka);

end;

 

При нажатии клавиш Ctrl+F9 выполняется компиляция кода программы.

Если компиляция выполнена успешно (ошибок нет) то можно выполнить Project1 с помощью клавиши F9. Преобразование значений элементов массива из формы выполняется в соответствии с описанием в тип Integer (StrToInt), а результат – произведение элементов массива при выводе в форму преобразуется в тип String (IntToStr).

 

Варианты заданий

Задание. Создать форму и процедуру обработки процесса выбора по заданному варианту.

1. Найти максимальный элемент в массиве X1, X2,..., Xn и его порядковый номер, n – длина массива. Массив вывести на экран.

2. Для n пар произвольных чисел ai и bi подсчитать mi =2 ai / cbi, где c –наибольшее из чисел ai и bi. Исходные данные: a1, a2,..., an и b1,..., bn массивы, n – длина массивов. Массивы вывести на экран.

3. В массиве X1, X2,..., Xn подсчитать количество чисел, принадлежащих отрезку [ a, b ] и сумму всех остальных. Исходные данные: n – длина массива; a, b – границы интервала, X1, X2,..., Xn – массив. Массив вывести на экран.

4. Найти среднеарифметическое значение элементов вещественного массива A1, A2,..., An, предшествующих первому элементу, большему 50. Исходные данные: n – длина массива, A1, A2,..., An – массив. Массив вывести на экран.

5. В массиве X1, X2,..., Xn найти отрицательные элементы, их количество и поместить их в отдельный массив. Оба массива вывести на экран.

6. Даны два одномерных массива вещественных чисел. Найти в них максимальные элементы и поменять их местами. Массивы вывести на экран.

7. Дан массив радиусов R1, R2,..., Rn. Для нечетных радиусов вычислить площадь круга, а для четных длину окружности. Результаты вывести на экран.

8. В массиве A [ k ] найти минимальный элемент и вывести его на экран. Переставить местами первый и последний элементы массива. Массив вывести на экран до и после перестановки.

9. Найти произведение элементов массива B [ m ] значение которых не равно значению первого элемента. Переставить местами 2 и 3 элементы массива. Массив вывести на экран до и после перестановки.

10. Вычислить объемы 5 цилиндров по формуле V = π Ri2Hi. Исходные массивы: массив радиусов R1, R2, …, R5 и массив высот H1, H2,..., H5.

11. Задан массив A [ n ]. Найти сумму элементов, значение которых превышает значение последнего элемента массива и заменить последний элемент этой суммой. Массив вывести на экран до и после перестановки.

12. Задан массив B [ n ]. Разделить его элементы на второй элемент массива. Найти сумму квадратов элементов вновь полученного массива. Массив и сумму вывести на экран.

13. Вычислить в заданных точках значение полинома по схеме Горнера Pn(x)=(((AnX+An-1)X+An-2)X+...)X+A0, исходные данные A0, A1,..., An – массив коэффициентов; X – переменная; n – степень полинома.

14. Составить программу нахождения элементов в массиве A [ m ], значения которых превышает 20. Переставить местами 1 и 2 элементы массива. Массив вывести на экран.

15. Заменить значения элементов массива, превышающие число 10 на нулевое и найти сумму элементов массива. Массив вывести на экран.







Дата добавления: 2014-11-10; просмотров: 1238. Нарушение авторских прав; Мы поможем в написании вашей работы!



Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

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

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

ОПРЕДЕЛЕНИЕ ЦЕНТРА ТЯЖЕСТИ ПЛОСКОЙ ФИГУРЫ Сила, с которой тело притягивается к Земле, называется силой тяжести...

СПИД: морально-этические проблемы Среди тысяч заболеваний совершенно особое, даже исключительное, место занимает ВИЧ-инфекция...

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

Уравнение волны. Уравнение плоской гармонической волны. Волновое уравнение. Уравнение сферической волны Уравнением упругой волны называют функцию , которая определяет смещение любой частицы среды с координатами относительно своего положения равновесия в произвольный момент времени t...

Медицинская документация родильного дома Учетные формы родильного дома № 111/у Индивидуальная карта беременной и родильницы № 113/у Обменная карта родильного дома...

Основные разделы работы участкового врача-педиатра Ведущей фигурой в организации внебольничной помощи детям является участковый врач-педиатр детской городской поликлиники...

Studopedia.info - Студопедия - 2014-2024 год . (0.01 сек.) русская версия | украинская версия