37688

Багатовимірні масиви. Функції. Обробка двовимірних масивів

Лабораторная работа

Информатика, кибернетика и программирование

Мета: вивчити засоби опису функцій користувача та задання багатовимірних масивів, навчитись застосовувати функції користувача та алгоритми обробки багатовимірних масивів, зокрема двовимірних.

Украинкский

2015-01-18

563.03 KB

3 чел.

Міністерство освіти і науки, молоді та спорту України

Хмельницький національний університет

Кафедра системного програмування

ЛАБОРАТОРНА РОБОТА №4

з програмування

Функції. Багатовимірні масиви. Обробка двовимірних масивів

Студент групи КІ-10-1      _______   ___________   Ноль М.Г.

Керівник                             _______   ___________   Медзатий Д.М.

Хмельницький

2011

Лабораторна робота №4

Тема: Функції. Багатовимірні масиви. Обробка двовимірних масивів.

Мета: вивчити засоби опису функцій користувача та задання багатовимірних масивів, навчитись застосовувати функції користувача та алгоритми обробки багатовимірних масивів, зокрема двовимірних.

Завдання

1. Задано матрицю А(mm), 1 < < 10. Знайти максимальний з елементів, розташованих над головною діагоналлю. Переставити рядки за зростанням значення другого елемента рядка.

Програма 1

#include <stdio.h>

void main()

{

srand(time(0));

int a[10][10],m,i,j,max;

printf("Vvedit kil'kist' r'adkiv i stovpziv M>1: "); scanf("%d",&m);

for (i=0;i<m;i++) {for (j=0;j<m;j++) a[i][j]=rand()%100,printf("%5d  ",a[i][j]); printf("\n");}

max=a[0][1];

for (j=1;j<m;j++) for (i=0;i<j;i++) if (a[i][j]>max) max=a[i][j]; printf("\nmax=%d \n",max);

//sorting

int maxi,t,l=m;

while(l>0) {maxi=0; for(i=1;i<l;i++) if (a[i][1]>a[maxi][1]) maxi=i;

       for (j=0;j<m;j++) t=a[l-1][j],a[l-1][j]=a[maxi][j],a[maxi][j]=t; l--; }

   for (i=0;i<m;i++) {for (j=0;j<m;j++) printf("%3d  ",a[i][j]); printf("\n");}    

}


Блок-схема 1

початок

Ввести(m)

j=1, m

i=0, m

i=0, j-1

j=0, m

a[i][j]=rand()%100

Вивести(a[i][j])

max=a[0][1]

a[i][j]>max?

+

max=a[i][j]

A

Вивести(max)


A

+

l>0?

l=l-1

maxi=i

maxi=0

i=0, m

i=0, m

j=0, m

i=1, l

+

a[i][1]>a[maxi][1]?

t=a[l-1][j],a[l-1][j]=a[maxi][j], a[maxi][j]=t

Вивести(a[i][j])

кінець

2.  Скласти програму визначення значення функції у точці. У програмі передбачити реалізацію трьох підпрограм (функцій): перша забезпечує введення інформації, друга забезпечує обчислення необхідної величини, третя – виведення результатів. Передачу параметрів між функціями організувати без використання глобальних змінних.

Програма 2

#include <stdio.h>

#include <math.h>

 

void read(int *x,int *m,int *n,int *k)

{

printf("Vvedit 4yslo X: "); scanf("%d",x);

printf("Vvedit 4yslo m: "); scanf("%d",m);

printf("Vvedit 4yslo n: "); scanf("%d",n);

printf("Vvedit 4yslo k: "); scanf("%d",k);

}

float F(int x,int m,int n,int k)

{

return sin(sqrt(m+2)*1.0/x+k*1.0/n)+log(pow(k*1.0/2+x*x,1/3));

}

void write(float y)

{

printf("\n\tY=%4.4f\n",y);

}

void main()

{

int x,m,n,k;

read(&x,&m,&n,&k);

write(F(x,m,n,k));

 }


кінець

вихід

Вивести(y)

write(y)

початок

read(x,m,n,k)

Ввести(x,m,n,k)

Блок-схема 2

                   

write(F(x,m,n,k))

read(x,m,n,k)

вихід

F (x,m,n,k)

Вивести(sin(sqrt(m+2)*1.0/x++k*1.0/n)+log(pow(k*1.0/2+
+x*x,1/3))
)

вихід

Висновок

Виконавши лабораторну роботу, я навчився описувати функції з різними параметрами та значеннями і методи їх виклику, а також засвоїв алгоритми опису багатовимірних масивів та їх обробку в мові програмування С.


 

А также другие работы, которые могут Вас заинтересовать

83840. Хирургическая анатомия свода и основания черепа. Виллизиев круг, синусы твёрдой мозговой оболочки, черепные нервы, оболочки головного мозга 985.14 KB
  Виллизиев круг синусы твёрдой мозговой оболочки черепные нервы оболочки головного мозга. Принято выделять три черепные ямки: переднюю от внутренней поверхности чешуи лобной кости до крыльев и площадки основной кости среднюю область пирамид височных костей заднюю от спинки турецкого седла до задних граней пирамид височных костей и борозды поперечного синуса. Оболочки головного мозга Головной мозг окружен тремя оболочками: 1 мягкой непосредственно прилежащей к его поверхности; 2 паутинной образующей узкое пространство над...
83841. Трепанация черепа. Показания, техника выполнения, осложнения. Схема кранио-церебральной топографии Кренлейна 93.22 KB
  Локализация разрезов и костного дефекта определяется локализацией патологического процесса Показания: оперативный доступ при вмешательствах по поводу операбельных опухолей головного мозга мозговых грыж водянки мозга кисты мозга и пр Техника выполнения: 1. Осложнения: Кровотечение; Инфекция; Отек головного мозга; Повреждение мозга после чего может возникнуть: Изменения в памяти поведении мышлении речи; Проблемы со зрением; Проблемы с балансом; Проблемы кишечника и мочевого пузыря; Судороги; Паралич или слабость; Реакция...
83842. Первичная хирургическая обработка ран головы 48.42 KB
  При осмотре пациента с раной головы необходимо определить: 1 ее глубину 2 наличие в ране поврежденных артериальных сосудов 3 наличие или отсутствие повреждения костей свода черепа. Наличие или отсутствие костных повреждений необходимо уточнять не только при осмотре раны но и с использованием рентгенографии черепа и компьютерной томографии головы.
83843. Хирургическая анатомия лицевого и тройничного нерва. Разрез при гнойном паротите 50.26 KB
  Хирургическая анатомия лицевого нерва Лицевой нерв смешанный. Двигательная часть начинается от ядра лицевого нерва в Варолиевом мосту. У клеток двигательного ядра имеются многочисленные чувствительные коллатерали идущие из чувствительных ядер тройничного нерва.
83844. Кровеносные сосуды лица 50.02 KB
  Артерии Верхнечелюстная артерия является одной из двухконечных ветвей наружной сонной артерии. В первом отделе следующие ветви: 1 – глубокая ушная артерия разветвляется в коже наружного слухового прохода в барабанной перепонке и в капсуле височно – нижнечелюстного сустава; 2 – передняя барабанная артерия проникает через каменисто – барабанную щель к слизистой оболочке барабанной полости; 3 – нижняя альвеолярная артерия вхожи в канал нижней челюсти и отдаёт ветви к зубам и десне нижней челюсти; её конечная ветвь – подбородочная артерия...
83845. Клетчаточные пространства лица. Хирургическая тактика при флегмонах лица 52.56 KB
  выше линии соединяющей углы рта. VI Клетчаточные пространства под слизистой оболочкой мышцами и органами дна полости рта: Боковые клетчаточные пространства между языком и нижней челюстью В них окруженные клетчаткой располагаются подъязычные слюнные железы с большими выводными протоками. Гнойные процессы возникающие в межмышечных клетчаточных пространствах дна полости рта могут распространятся в пределах дна полости рта. Височноязычный промежуток сообщается с жировым телом щеки крылонебной ямкой а через круглое отверстие с полостью...
83846. Хирургическая тактика при флегмонах лица 54.42 KB
  Раскрытие и дренирование флегмон скуловой области. Раскрытие и дренирование флегмон височной области. В указанной области возможно возникновение поверхностной межапоневротической подапоневротической глубокой и разлитой флегмон. Поверхностная флегмона височной области образуется между кожей и собственной височной фасцией.
83847. Подчелюстная область, треугольник Пирогова. Перевязка язычной артерии, показания, техника выполнения 48.93 KB
  В пределах подчелюстной области залегают: подчелюстная слюнная железа лицевые артерия и вена подподбородочные артерия и вена подъязычный и челюстноподъязычный нервы лимфатические узлы и клетчатка окружающая эти образования. Последняя сообщается с клетчаткой подъязычной области крыловидночелюстного окологлоточного пространств боковой области лица и шеи. Подчелюстные лимфатические узлы являются регионарными узлами челюстнолицевой области полости рта. Треугольник Пирогова Треугольное пространство в боковой части надподъязычной...
83848. Коникотомия. Показания, техника выполнения, осложнения, их профилактика 116.46 KB
  Врач встав справа от больного указательным пальцем левой руки нащупывает бугорок перстневидного хряща и углубление между ним и нижним краем щитовидного хряща соответствующее расположению конической связки. Большим и средним пальцами левой руки фиксируют щитовидный хрящ натягивая кожу над хрящами гортани и смещая кзади грудиноключичнососцевидные мышцы с расположенными под ними шейными сосудистыми пучками второй палец находится между дугой перстневидного и нижним краем щитовидного хряща. Скальпелем проводят горизонтальный поперечный разрез...