Главная Контакты В избранное
  • Курсовая работа По дисциплине «Обработка экспериментальных данных с применением языков высокого уровня». «Применение языка программирования PASCAL для обработки и анализа экспериментальных данных».

    АвторАвтор: student  Опубликовано: 17-11-2020, 16:31  Комментариев: (0)

     

     

     

     

     

    Скачать: kursovaya_po_paskalyu.zip [5,04 Mb] (cкачиваний: 0)  

     

     

    Курсовая работа

    По дисциплине «Обработка экспериментальных данных с применением языков высокого уровня».

    «Применение языка программирования PASCAL для обработки и анализа экспериментальных данных».

    Вариант: 9.

     

     

     

     

    Задание 1.

    Напишите программу, которая вычисляет объем шара , где

    – радиус шара.

     

    Блок-схема.

    Листинг программы

     

    Program Ex_1;

    var

    r,p,V:real;

    begin

    p:=3.14;

    Writeln('vvedite chislo r', r:8:5);

    Readln(r);

    V:=3/(4*p*r*r*r);

    Writeln('V=',V:8:5);

    Readln;

    End.

     

    Результат:

    Задание 2.

    В программе используйте проверку веденных пользователем значений. Если значения меньше или равны 0,выведите сообщение об ошибке.

     

    Блок-схема.

    Листинг программы

     

    Program Ex_2;

    var

    r,p,V:real;

    begin

    p:=3.14;

    Writeln('vvedite chislo', r:8:2);

    Readln(r);

    if r<=0 then writeln('Oshibca')

    else V:=3/(4*p*r*r*r);

    Writeln('V=',V:10:5);

    Readln;

    End.

     

    Результат:

     

    Задание 3.

    Напишите программу, которая по введённому номеру компьютерных устройств выводит предположительную их стоимость. В начале программы необходимо вывести ассортимент с соответствующими номерами. Если введено число, не соответствующее номеру из списка, выведите сообщение об этом (используйте ветвь else).

    Блок-схема.

     

    Листинг программы

    Program Ex_3;

    label 0;

    Var m,n:integer;

    begin

    0:Writeln('vvedite nomer computer ystrostva');

    Readln(n);

    Writeln(n);

    Case n of

    1:Writeln('mouse 50ruble');

    2:Writeln('keyboard 100ruble');

    3:Writeln('system unit 4000ruble');

    4:Writeln('memory card 900ruble');

    5:Writeln('screen 1500ruble');

    6:Writeln('hard drive 2000ruble');

    else Writeln('oshibka');

    goto 0; end;

    Writeln('vvesti nomer ystroistva? vvedite 1, else not vvedite 2');

    Readln(m);

    if m=1 then goto 0;

    Readln;

    End.

     

    Результат:

     

     

     

     

     

     

     

     

     

    Задание 4.

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

    Блок-схема.

    Листинг программы

    Program Ex_4;

    label 1;

    const n=5;

    var V,r:array[1..n] of real;

    p,s:real;

    i:integer;

    begin

    p:=3.14;

    1:Writeln('vvedite array r 1-5');

    for i:=1 to n do

    begin

    Readln(r[i]);

    if r[i]<=0 then goto 1

    else V[i]:=3/(4*p*r[i]*r[i]*r[i]);

    end;

    for i:=1 to n do

    Writeln('V=',V[i]:10:5);

    Readln;

    End.

     

    Результат:

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    Задание 5.

    Напишите программу, которая выводит код символа, введенного пользователем. Завершением ввода – символ «точка» (.).

    Блок-схема.

    Листинг программы

    Program Ex_5;

    label 1,2;

    var p:char;

    s:integer;

    begin

    Writeln('dlia polychenia ASKI-koda vvedite simvol');

    Readln(p);

    1:s:=ord(p);

    Writeln('ASKI-kod',p,'=',s);

    Writeln('povtorite vvod? else not-vvedite . else yes-vvedite simvol');

    Readln(p);

    if p='.' then goto 2

    else begin goto 1;

    Readln;

    2:End;

    End.

     

    Результат:

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    Задание 6.

    В процедуре заполнить прямоугольную матрицу размером 3*5 случайными числами. В функции найдите факториал числа, введенного пользователем (не более 5), в основной программе найдите результирующую матрицу, полученную путем деления случайной матрицы на факториал.

    Блок-схема.

     

     

     

    Листинг программы

     

    Program Ex_6;

    const q=3; w=5;

    var

    A:array[1..q, 1..w] of real;

    i,j:integer;

    n,c:integer;

    procedure matr(i,j:integer);

    begin

    for i:=1 to q do

    begin

    for j:=1 to w do

    begin

    A[i,j]:=random(100);

    write(A[i,j]:8:2);

    end;

    writeln;

    end;

    end;

    function f(k:integer):integer;

    var f1:integer;

    begin

    f1:=1;

    for i:=1 to k do

    f1:=f1*i;

    f:=f1

    end;

    begin

    writeln('n-?');

    readln(n);

    if n<=5 then begin

    matr(q,w);

    writeln;

    c:=f(n);

    writeln(c);

    for i:=1 to q do

    for j:=1 to w do

    A[i,j]:=A[i,j]/c;

    for i:=1 to q do

    begin

    for j:=1 to w do

    begin

    write(A[i,j]:8:2);

    end;

    writeln;

    end;

    end else writeln('n<6');

    readln;

    readln;

    end.

    Результат:

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    Задание 7.

     

    Записать в типизированный файл информацию о студентах. Использовать тип "записи" со следующими полями:

    1.Фамилия, Имя, Отчество,

    2.Группа,

    3. Оценка по математике,

    4.Оценка по физики,

    5.Оценка по информатике.

    Результат - количество записей в файле и количество положительных оценка (хорошо и отлично).

     

     

     

    Блок-схема.

    Листинг программы

     

    Program Ex_7;

    uses crt;

    Type student=record

    fio:string[30];

    group,ocenM,ocenF,ocenI: integer;

    End;

    var zap:student;

    a:file of student;

    name:string;

    d1,g1,h1,s,z,d,g,h,n:integer;

    begin

    s:=0;

    d:=0; d1:=0;

    g:=0; g1:=0;

    h:=0; h1:=0;

    n:=0;

    clrscr;

    Writeln('zadaite name file');

    Readln(name);

    Assign(a,'doc.txt');

    Rewrite(a);

    Writeln('vvedite FIO studenta');

    Readln(zap.fio);

    While zap.fio <> '!' do

    begin

    Writeln('vvedite nomer group');

    Readln(zap.group);

    Write(a, zap);

    Writeln('vvedite ocenky po matematike');

    Readln(zap.ocenM);

    Write(a, zap);

    Writeln('vvedite ocenky po fithike');

    Readln(zap.ocenF);

    Write(a, zap);

    Writeln('vvedite ocenky po informatike');

    Readln(zap.ocenI);

    Write(a, zap);

    Writeln('vvedite FIO studenta');

    Readln(zap.fio);

    n:=n+1;

    if zap.ocenM=4 then d1:=d1+1;

    if zap.ocenM=5 then d:=d+1;

    if zap.ocenF=4 then g1:=g1+1;

    if zap.ocenF=5 then g:=g+1;

    if zap.ocenI=4 then h1:=h1+1;

    if zap.ocenI=5 then h:=h+1;

    s:=d+g+h;

    z:=d1+g1+h1;

    End;

    Writeln('s=',s);

    Writeln('z=',z);

    Writeln(n);

    Close(a);

    Writeln('file sothdan');

    Readln;

    End.

    Результат:

     

     

     

     

     

    Задание 8.

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

    Блок-схема.

    Листинг программы

     

    Program Ex_8;

    uses Crt, Graph;

    const Count=10;

    Width =40;

    var

    I,X1,X2,Y1,Y2 : integer;

    M : array[1..Count] of byte;

    DriverVar, ModeVar: integer;

    S_M : string;

    begin

    randomize;

    for I:=1 to Count doM[I]:=random(11);

     

    DriverVar:=Detect;

    InitGraph(DriverVar,ModeVar,'..\bgi');

    SetViewPort(10,10,630,400,True);

    SetTextStyle(DefaultFont,HorizDir,1);

    Y1:=325;

    for I:=1 to Count do

    begin

    X1:=I*50;

    Str(M[I],S_M) ;

    SetFillStyle(I,I);

    Bar3D(X1,Y1,X1+Width,Y1-M[I]*30,10,TopOn);

    OutTextXY(X1+15,Y1-M[1]*(-5)-8,S_M);

    end;

    OutTextXY(0,200,'Q');

    OutTextXY(150,GetMaxY-100,'dlia thavershenia najmite Enter');

    Readln;

    CloseGraph;

    end.

    Результат:

     

    скачать dle 10.6фильмы бесплатно