Реферат: Программирование на языке высокого уровня 2
Название: Программирование на языке высокого уровня 2 Раздел: Рефераты по информатике Тип: реферат | ||||||||||||||||||
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «Уфимский государственный авиационный технический университет» ФИЛИАЛ В ГОРОДЕ СТЕРЛИТАМАКЕ КАФЕДРА ЕСТЕСТВЕННО-НАУЧНЫХ И ОБЩЕПРОФЕССИОНАЛЬНЫХ ДИСЦИПЛИН ПОЯСНИТЕЛЬНАЯ ЗАПИСКА к расчетно-графической работе по Информатике «Программирование на языке высокого уровня» 2403.402103.000ПЗ (обозначение документа)
Стерлитамак 2010 г. Содержание 1.3Исходные данные для отладки и тестирования программы.. 3 1.4Исходный текст программы.. 3 1.5Экранная форма программы.. 4 2.3Исходные данные для отладки и тестирования программы.. 7 2.4Исходные данные программы.. 7 2.5Экранная форма программы.. 8 3.3Исходные данные для отладки и тестирования программы.. 11 3.4Исходный текст программы.. 11 3.5Экранная форма программы.. 12 4.3Исходные данные для отладки и тестирования программы.. 17 4.4Исходный текст программы.. 17 4.5Экранная форма программы.. 19 Даны действительные числа х и у , не равные друг другу. Меньшее из этих двух чисел заменить половиной их суммы, а большее – их удвоенным произведением.
Рисунок 1. Блок-схема действий над числами Продолжение рис.1.
Рисунок 1. Блок-схема действий над числами 1.3 Исходные данные для отладки и тестирования программы В качестве исходных данных выберем произвольные 2 действительных числа a, bи проверим работу программы, нажав на кнопку «Выполнить». Результаты можно посмотреть в рабочем окне программы на рис.2. procedure TForm1.Button1Click(Sender: TObject); var a,b,c,d:real; begin a:=StrToFloat(Edit1.Text); b:=StrToFloat(Edit2.Text); if (a=b) then ShowMessage('Числа равны! Введите разные числа.'); if (a>b) then begin c:=2*a*b; d:=(a+b)/2; end ; if (a<b)then begin c:=(a+b)/2; d:=2*a*b; end; Edit3.Text:=FloatToStr(c); Edit4.Text:=FloatToStr(d); end; Рисунок 2. Результат выполнения программы Протабулировать функцию заданной формулой: где с=4, a=2.8, b=-0.3,
Рисунок 3. Блок-схема табулирования функции
Рисунок 3. Блок-схема табулирования функции 2.3 Исходные данные для отладки и тестирования программы В качестве исходных данных выберем значения a=1, b=2, h=0.05 и проверим работу программы, нажав кнопку «Табулировать». Результаты можно посмотреть в рабочем окне программы рис.4. procedure TForm1.Button1Click(Sender: TObject); var a,b,a1,b1,c1,h,x,y:extended; begin a:=StrToFloat(Edit1.Text); b:=StrToFloat(Edit2.Text); h:=StrToFloat(Edit3.Text); a1:=2.8; b1:=-0.3; c1:=4; x:=a; Memo1.Clear; Memo1.Lines[0]:=' x | y '; Memo1.Lines.Add('----------'); while x<=b do begin if (x<1.2) then y:=a1*x*x+b1*x+c1; if (x=1.2) then y:=a1/x+sqrt(x*x+1); if (x>1.2) then y:=(a1+b1*x)/sqrt(x*x+1); Memo1.Lines.Add(FloatToStrf(x,fffixed,5,2)+'|'+FloatToStrf(y,fffixed,5,2)); x:=x+h; end; end; Рисунок 4. Результат выполнения программы 1. Дан массив целых чисел из n элементов, заполненный случайным образом числами из промежутка [-10,20]. Найти сумму элементов, имеющих нечетные индексы. 2. Подсчитать количество элементов массива, значения которых больше заданного числа А и кратных 5. 3.Найти номер первого отрицательного элемента, делящегося на 5 с остатком 2.
Рисунок 5. Блок-схема процедуры заполнения массива случайными числами
Рисунок 6. Блок-схема процедуры для необходимых вычислений и вывода результатов на экран 3.3 Исходные данные для отладки и тестирования программы В качестве исходных данных вводим любое целое число n – количество элементов массива и, нажав на кнопку «Создать массив», формируем одномерный массив, заполненный случайным образом целыми числами из промежутка [-10,20]. При нажатии на кнопку «Выполнить» происходит вычисление, заданные в задании. Результаты можно посмотреть в рабочем окне программы рис. 7 Описание глобальных переменных var Form1: TForm1; n:integer; a:array of integer; Текст процедуры для задания массива случайными числами. procedure TForm1.Button1Click(Sender: TObject); var i:integer; begin Randomize; n:=StrToInt(Edit1.Text); SetLength(a,n); Edit2.Clear; for i:=1 to n do begin a[i]:=Random(30)-10; Edit2.Text:=Edit2.Text+' '+IntToStr(a[i]); end; end; Текст процедуры для вычислений и вывода результатов на экране procedure TForm1.Button2Click(Sender: TObject); var sum,i,k,l,a1:integer; begin Edit3.Clear; Edit4.Clear; Edit5.Clear; a1:=StrToInt(Edit6.Text); sum:=0; k:=0; For i:=1 to n do if (i mod 2<>0) then sum:=sum+a[i]; If CheckBox1.Checked then Edit3.Text:=IntToStr(sum); For i:= 1 to n do begin if (a[i]>a1) and (a[i] mod 5=0) then k:=k+1; end; if CheckBox2.Checked then Edit4.Text:=IntToStr(k); l:=0; for i:=n downto 1 do begin if (a[i]<0) and (abs(a[i]) mod 5 = 2) then l:=i; end; If CheckBox3.Checked then Edit5.Text:=IntToStr(l); end; Рисунок 7. Результат выполнения программы Список использованной литературы 1. http://wiki.lazarus.freepascal.org - Lazarus wiki энциклопедияпо Free Pascal Compiler/Lazarus 2. http://lazarus.freepascal.org - Официальный сайт проекта Lazarus 3. Бобровский С.И.,lazarus. Учебный курс (пособие для самообразования), 2005г. 4. Информатика: Учебник для вузов.- / Под ред. С.В. Симоновича. – СПб.: Питер, 2008. |