1_4 (1185047)
Текст из файла
ЗАДАЧА 1.4.пример Студент Иванов И.И., Гр. Р-10-01
Тема: Обработка одномерных массивов. Алгоритм с ветвлением в теле цикла.
Задание: Разработать алгоритм и программу с единственным циклом для обработки одномерного массива
1)Условие задачи:
Для заданного массива w из n элементов найти количество элементов синус которых больше 0.5, а также среднее арифметическое элементов, значения синуса которых отрицательно.
2а) Использумые компоненты
Имя компонента (Name) | Для чего используется | Примечание |
Form1 | Для размещения всех требуемых в задаче компонент | |
| Label1 | Для размещения текста ‘n=’ | |
| Label2 | Для размещения текста ‘ Массив w’ | |
| Label3 | Для размещения текста ‘n >10, введите снова’ | |
| Label4 | Для размещения текста ‘kol=’ | |
| Label5 | Для размещения текста ‘sa=’ | |
| Edit1 | Для ввода значения n | |
| Edit2 | Для вывода значения kol | |
| Edit3 | Для вывода значения sa | Если нет эл-тов <0, выводится сообщение |
| StringGrid1 | Для ввода значений элементов массива w | Кол-во столбцов=1, кол-во строк 10 |
| Button1 | Для запуска проекта на решение |
2в) Таблица событий
| Имя компонента (Name) | Название события | Описание события | Реакция на событие | Имя соответствующей процедуры – обработчика события |
| Button1 | OnClick | Щелчок по мышке | Решение задачи, результат выводится в окошки Edit2, Edit3 | TForm1.Button1Click |
3) procedure Form1.Button1Click :
3а) Таблица данных
| Вид данного | Обозначение | Смысл | Тип | Примечан |
| Исходные данные (ИД) | w | Заданный массив | Веществ.одномерный мас- сив (array[1..10] of real) | |
| n | Кол-во элементов массива w | Целое (integer) | n<=10 | |
| Результирующие данные (РД) | kol | Кол-во эл-тов массива w синус которых > 0.5 | Целое (integer) | |
| sa | Ср. арифм. эл-тов массива w синус которых < 0 | Веществ. (real) | ||
| Промежуточные данные (ПД) | i | Номер текущего значения элемента массива w | Целое (integer) | |
| kol1 | Кол-во эл-тов массива w синус которых < 0 | Целое (integer) |
3б)Алгоритм 3в) Программа
| Начало ввод n если n<=10 то ввод массива w kol:=0 kol1:=0 sa:=0 для i от 1 до n шаг 1 цикл если (w[i] > 0.5) то kol:= kol + 1 конец если если (w[i] < 0) то kol1 := kol1 + 1 sa := sa + w[i] конец если конец цикла вывод kol если (kol1 > 0) то sa:= sa / kol1 вывод sa иначе вывод ‘ Sin(w[i])>=0 для всех i ’ конец если иначе вывод “ n>10, введите снова “ конец если конец | . . . procedure TForm1.Button1Click(Sender: TObject); var w : array[1..10] of real; sa : real; n, i, kol, kol1: integer; begin n:= StrToInt(Edit1.text); if (n<=10) then begin Edit3.text:= ' '; for i:=1 to n do w[i]:= StrToFloat(StringGrid1.Cells[0, i -1]); kol:=0; kol1:=0; sa:=0; for i:=1 to n do begin if (sin(w[i]) > 0.5) then kol:= kol + 1; if (sin(w[i]) < 0) then begin kol1:= kol1+1; sa:=sa + w[i]; end; end Edit2.text:=IntToStr(kol); if (kol1 > 0) then begin sa:= sa / kol1; Edit3.text:=FloatToStr(sa); end else Edit3.text:= ‘ Sin(w[i])>=0 для всех i ’ ; end else Label3.caption:= ‘n>10, введите снова’ ; end; . . . |
4)Тестирование
4а)Аномалии: T1) n>10 T2) в массиве w нет элементов, синус которых отрицателен
4б) Тесты
| № пп | Что проверяется | Значения исходных данных | Ожидаемый результат |
| 1 | Реакция программы при n>10 | n=11 | Выводится текст ‘n>10, введите снова' |
| 2 | В массиве w нет эл-тов, синус которых < 0 , но есть эл-ты, синус которых > 0.5 | n=5 w=(0.1, 0.785, - 3, - 2.3, 0 ) | kol=2 ‘Sin(w[i])>=0 для всех i ’ |
| 3 | В массиве w есть эл-ты, синус которых < 0, но нет элементов, синус которых > 0.5 | n=5 w=(0.1, - 0.1, 0, 0.2, - 0.7) | kol=0 sa= … |
| 4 | В массиве w есть эл-ты, синус которых < 0 и есть элементы, синус которых > 0.5 | n=5 w=(0.1, 0.8, - 0.1, 0, 2.3) | kol=1 sa= … |
Характеристики
Тип файла документ
Документы такого типа открываются такими программами, как Microsoft Office Word на компьютерах Windows, Apple Pages на компьютерах Mac, Open Office - бесплатная альтернатива на различных платформах, в том числе Linux. Наиболее простым и современным решением будут Google документы, так как открываются онлайн без скачивания прямо в браузере на любой платформе. Существуют российские качественные аналоги, например от Яндекса.
Будьте внимательны на мобильных устройствах, так как там используются упрощённый функционал даже в официальном приложении от Microsoft, поэтому для просмотра скачивайте PDF-версию. А если нужно редактировать файл, то используйте оригинальный файл.
Файлы такого типа обычно разбиты на страницы, а текст может быть форматированным (жирный, курсив, выбор шрифта, таблицы и т.п.), а также в него можно добавлять изображения. Формат идеально подходит для рефератов, докладов и РПЗ курсовых проектов, которые необходимо распечатать. Кстати перед печатью также сохраняйте файл в PDF, так как принтер может начудить со шрифтами.















