Основы программирования

МОН РК

КГУ им. Ш. Уалиханова

Физико-математический факультет

Кафедра Информационных систем и Вычислительной техники



















Отчет

По вычислительной практике






1. Процедуры программ



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



Var a,b,c,d,res1,res2,res3:integer;

Procedure Poisk(Var c1,c2:integer; var Res:integer);

Begin

if c1>c2 then res:=c1

else

res:=c2;

End;

begin

write('Введите 1-е число: ');

readln(a);

write('Введите 2-е число: ');

readln(b);

write('Введите 3-е число: ');

readln(c);

write('Введите 4-е число: ');

readln(d);

Poisk(a,b,res1);

Poisk(c,d,res2);

Poisk(res1,res2,res3);

writeln('Результат = ',res3);

end.



2. Цикл с параметром.

Ввести натуральное число N. Получить все его натуральные делители.




program p1;

label 1;

var i,n:integer;

prod:char;

begin

1:write('N= '); readln(n);

writeln('Vse ego naturalinye deliteli:');

for i:=1 to n do

if n mod i=0 then writeln(i);

write('Vi xotite prodoljiti? (y/n) '); readln(prod);

if prod='y' then goto 1;

readln;

end. 



3. Цикл пока.

Программа, используя оператор WHILE, которая выводит все четные числа в диапазоне от 2 до 100 включительно и вычисляет их сумму.



uses crt;

var a,s:integer;

begin

clrscr;

a:=0;

s:=0;

while a<100 do

begin

a:=a+2;

write(a,' ');

s:=s+a;

end;

writeln;

write('Summa chetnih chisel ot 2 do 100=',s);

readln

end.



Практическая работа №2.

Одномерные массивы.

Двумерные массивы.

Функции.

Практические навыки работы в MS Excel 

СУБД Access 

1. Одномерные массивы.

Заменить каждый элемент массива средним арифметическим всех предшествующих ему элементов. Число элементов N >=100. 



program dfh;

var A,B:array[1..100] of real;

i,n:integer;

f:text;

function sr(n:integer):real;

var i:integer; sum:real;

begin

sum:=0;

for i:=1 to n-1 do sum:=sum+A[i];

sr:=(sum)/(n-1);

end;

begin

write ('Vvedite razmer massiva A: ');

readln (n);

for i:=1 to n do begin

write ('A[',i,']='); readln (A[i]); end;

write ('Vot vvedennyy vami massiv A:');

for i:=1 to n do write (A[i]:0:2,' ');

writeln;

{***}

B[1]:=A[1];

for i:=2 to n do B[i]:=sr(i);

{***}

write ('Vot preobrazovanyi massiv A:');

for i:=1 to n do write (B[i]:0:2,' ');

assign(f,'rezult.txt'); rewrite(f);

for i:=1 to n do writeln (f,B[i]:0:2);

close(f);

readln;

end.



2. Двумерные массивы



Заменить все отрицательные элементы массива К (n, m) на их квадраты, положительные - на корень из данного числа.



uses

crt;

type

 mas=array [1..100,1..100] of real;

var

a:mas;

i,j:integer;

procedure VVod(var a:mas);

var

i,j,n,m:integer;

begin

randomize;

write('Kolichestvo strok: ');

readln(n);

write('Kolichestvo stolbcov:');

readln(m);

for i:=1 to n do

for j:=1 to m do

begin

a[i,j]:=random(10)-5;

end;

end;

procedure ViVod(var a:mas);

var

i,j,n,m:integer;

begin

writeln('Ishodniy massiv: ');

for i:=1 to n do

begin

for j:=1 to m do

write(a[i,j]:3:0,' ');

writeln

end;

end;

Procedure W(Var a:mas);

var

i,j,n,m:integer;

begin

for i:=1 to n do

begin

for j:=1 to m do

if a[i,j]<0 then

begin

a[i,j]:=sqr(a[i,j]);

end

else

if a[i,j]>0 then

begin

a[i,j]:=sqrt(a[i,j]);

end;

end;

end;

procedure ViVod2(var a:mas);

var

i,j,n,m:integer;

begin

writeln('Rezultiryushiy massiv: ');

for i:=1 to n do

begin

for j:=1 to m do

write(a[i,j]:3:0,' ');

writeln

end;

end;

begin

Vvod(a);

Vivod(a);

W(a);

Vivod2(a);

end.



3. Функции



Установить, к чему ближе по абсолютной величине наименьшее из двух чисел - к их среднему арифметическому или среднему геометрическому.



Var a,b : real;

average : real;

geometricmean : real;

minstr : string;

function min(a,b : real) :real;

begin

min := a;

minstr := 'Pervoe';

if (b < a) then

begin

min := b;

minstr := 'Vtoroe';

end;

end;

begin

write('Vvedite 1-e chslo: ');

readln(a);

write('Vvedite 2-e chslo: ');

readln(b);

average := (a + b) / 2;

geometricmean := sqrt(a*a + b*b);

a := min(a,b);

writeln('Naimenshee chislo - ',minstr,' (',a:0:3,')');

write('Blize k srednemu ');

if (abs(average - a) < abs(geometricmean - a)) then

begin

writeln('arifmeticheskomu (',average:0:3,')');

end

else

begin

writeln('geometricheskomu (',geometricmean:0:3,')');

end;

readln;

end.



4. Практические навыки работы в MS Excel



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

Программа Microsoft Excel позволяет: 

сформировать данные в виде таблиц; 

рассчитать содержимое ячеек по формулам, при этом возможно использование более 150 встроенных функций; 

представить данные из таблиц в графическом виде; 

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

Пример работы в MS Excel:

Закрепим полученные знания в практической работе. Будем вести работу по следующей теме: "Расчет себестоимости товара". 

Себестоимость товара – один из основных показателей эффективности хозяйственной деятельности предприятия. От качества расчета себестоимости зависит обоснованность цен. Себестоимость не только включает затраты на производство и реализацию товара, но и раскрывает экономический механизм возмещения этих затрат.

Материальные затраты включают в себя затраты: 

собственно материалов;

сырья;

полуфабрикатов;

энергии.

К примеру, рассчитаем сырьевую себестоимость одного пирожка. Для этого создаем таблицу с исходными данными. Исходная таблица представлена на рисунке 1. Расчет материальных затрат (МЗ). 

Получение конечной стоимости товара мы получили при помощи следующей формулы: 

в ячейку E5 записать формулу: =C5*E5;

в ячейку Е10: = СУММ(E4 : E9). 

Расчет затрат на электроэнергию удобнее проводить не для единицы товара, а для целой партии изготавливаемых товаров. Рассмотрим изготовление партии в 200 пирожков (за одну смену). Общая стоимость = Цена за 1кВт х Мощность эл.плиты х Время изготовления 

Для расчета стоимости электроэнергии (ЦЭ) создаем следующую таблицу, 

Для выполнения расчетов в MS Exсel в ячейку H7 записать формулу: = H4 * H5 * H6, а в ячейку H8 формулу: = H7/200. 



МЗ= ЦМ + ЦЭ



Для выполнения расчетов в ячейку E13 записать формулу: = E10 + H8

На рисунке 3 показана сумма материальных затрат для приготовления одного пирожка. 



5. СУБД Access



Теоретическая часть

Хранение информации – одна из важнейших функций компьютера. Одним из распространенных средств такого хранения являются базы данных. База данных – это файл специального формата, содержащий информацию, структурированную заданным образом.

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

Структура базы данных

Большинство баз данных имеют табличную структуру, состоящую из многих вязанных таблиц. Такие базы данных называются реляционными. Как вы знаете в таблице адрес данных определяется пересечением строе и столбцов. В базе данных столбцы называются полями, а строки - записями. Поля образуют структуру базы данных, а записи составляют информацию, которая в ней содержится.

В процессе создания таблицы, вы встретились с понятием ключа. Первичный ключ (в последующем будем называть просто ключом) – одно или несколько полей, совокупность которых однозначно определяет любую запись таблицы.

В нашем варианте ключевым является поле Адресат. В таблице видно, что это поле – счетчик, т.е. нумерует записи в порядке ввода. Заполнять поле Адресат не нужно, счетчик срабатывает автоматически, как только заполнена хоть одна ячейка строки таблицы.

Любая таблица Microsoft Access 2003 может быть представлена в двух режимах:

режиме таблицы, предназначенном для ввода данных, их просмотра и редактирования; 

режиме конструктора, предназначенном для создания и изменения таблицы. 

Маска ввода — это шаблон, позволяющий вводить в поле значения, имеющие одинаковый формат. Маска ввода автоматически изображает в поле постоянные символы. При вводе данных в поле нет необходимости набирать эти постоянные символы, даже если они должны быть включены в значение поля; достаточно заполнить пустые позиции в маске ввода. Кроме того, Microsoft Access 2003 не позволит ввести в поле значения, не вписывающиеся в определенную для этого поля маску ввода.

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

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

Зададим маску ввода для полей Домашний Телефон и Сотовый Телефон. Для этого установим текстовый курсор в имя поля Домашний телефон в нижнем поле Общие напротив Маски ввода и создаем шаблон в окне Создание масок щелкнем Список введем в поле Описание – Номер телефона, Маска ввода – 0 00 00, Образцы данных – 2-66-34 и щелкнем по кнопке Вперед на 1 запись . Создаем маску ввода для номера сотового телефона: Описание – Номер телефона, Маска ввода – 000-000-00-00, Образец данных – 902-275-78-33 щелчок по и Закрыть.

В окне Создание масок ввода щелкнем по полю Номер телефона 2-66-34 – Далее – Готово.

Щелкнув по строке Конструктора Сотовый телефон, изменим для него маску ввода на десятизначный номер из созданного шаблона. Переходим из режима Конструктора в режим Таблицы, для этого выполняем команду Вид – Таблица или нажмите кнопку на панели инструментов. На вопрос о сохранении таблицы отвечаем Да. Далее заполнение номеров телефонов заключается в вводе в каждую ячейку цифр, перемещая курсор из ячейки в ячейку. 

Вернемся в таблицу и заполним поле Адрес. Введем данные в поле Адрес. Изменим ширину столбцов таблицы по аналогии с электронными таблицами. Приблизительный вид таблица показан на рисунке 3 ниже.