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))
)

вихід

Висновок

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


 

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

77321. ТРЕХМЕРНАЯ ВИЗУАЛИЗАЦИЯ В СИСТЕМЕ ИСКУССТВЕННОГО ВИДЕНИЯ ДЛЯ ПИЛОТОВ МАЛОЙ АВИАЦИИ 1.39 MB
  Это вызвано тем что данные летательные аппараты перемещаются на относительно небольшой высоте в области действия природного ландшафта и искусственных высотных объектов и управляются пилотом в ручном режиме а не на автопилоте. На основе этих данных пилотажный монитор должен в реальном режиме времени строить трёхмерное представление о реальной картине окружающей самолёт. Экран пилотажного монитора Программа пилотажного монитора получает данные от сервера данных о текущих параметрах полёта и в режиме реального времени строит соответствующее...
77322. C89 COMPILER FOR MCp 0411100101 CPU 21.5 KB
  Produced by «MultiClet» Corp. high performance processors of MCp family are based on original EPIC (Explicitly Parallel Instruction Computing) architecture. Traditional EPIC solutions with very long instruction words (VLIW) suggest to compose programs from words containing independent commands for different functional units
77323. DEVELOPMENT OF ENVIRONMENT FOR GRIDS VISUALIZATION 22 KB
  Strodubtsev IMM UrB RS UrFU Ekterinburg In our reserch tem during the lst decde the tools for grids visuliztion re designed nd developed. The second one is the visuliztion of grids which re results of lrge computing. Now the new system for visuliztion of grids t stge of genertion is under development.
77324. ЭФФЕКТИВНОСТЬ НИТЕЙ В СИСТЕМАХ С ОБЩЕЙ ПАМЯТЬЮ 29.5 KB
  Бахтерев ИММ УрО РАН Екатеринбург Традиционно считается что в системах с общей памятью разбивать вычисление на параллельно выполняющиеся задачи эффективней при помощи нитей а не процессов. Когда же уточняют то говорят о контексте исполнения связанным с TLB Trnsltion Lookside Buffer специальный кэш ускоряющий трансляцию виртуальных адресов в физические который нужно сбрасывать и заполнять новыми значениями при переключении процессора на исполнение разных процессов и которой можно не изменять при переключении на исполнение нитей одного...
77325. The RiDE.C microkernel 12 KB
  C microkernel M. t this point it is resonble to begin with description of microkernel RiDE. nd microkernel rchitecture ssumes to orgnize services mnging resources in the form of userlevel servers which re ccessed over interprocess communiction mchinery IPC nd over the stck of protocols built on IPC.C microkernel re determined by bsic intertsk exchnge protocol RiDE.
77326. RiDE.L – programming language 12 KB
  Kosenko IMM UrB RS USU Yekterinburg With time ti is getting hrder to develop softwre for highperformnce computing HPC; the min reson for tht is the complexity grow of hrdwre rchitectures mthemticl models dt structures nd lgorithms complexity which re pplied in lrge computtions. The lnguges with clssicl compiler rchitectures trditionlly used in HPC: C C FORTRN Pscl re not so good t hndling tht complexity s lter lnguges: Hskell JvScript Oz Ruby. The best in tht Hskell GHC even when breking hrmonious syntx nd semntic...
77327. DATAFLOW BASED DISTRIBUTED COMPUTING METHODS. SYSTEM PROTOTYPE 20.5 KB
  Different methods re pplied to simplify the progrmming nd execution of prllel progrms. On the one hnd universl tools for utomtic progrm prlleliztion both for execution on shred memory nd for multicomputer systems re being developed. The gol of tht design is to simplify prllel progrm development but without significnt loss in the effectiveness of the progrm codes execution. Term tsk nmes the progrm which reds during its execution the dt items with specific nmes from storge nd s the result...
77328. IMPROVING THE DEVELOPMENT OF VISUALIZATION SOFTWARE 30.5 KB
  Visuliztion helps to interpret results of vrious stges of clcultions. However there is problem of developing of visuliztion tools exist. To explin tht lets see which types of visuliztion tools re: Universl visuliztion systems cpble to disply visul objects of vrious clsses.