Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
16
Добавлен:
17.04.2015
Размер:
31.23 Кб
Скачать

Московский Государственный Университет Леса

ФЭСТ ВТ-11

Лабораторная работа №10.

Программирование на языках высокого уровня

Выполнил студент Шемяков И.И.

Проверил Ларионов Н.В.

Москва 2012 г.

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

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

#include <conio.h>

#include <time.h>

#define N 10

void generate_elements(int a[]);

void print_elements(int a[]);

int find_min(int a[]);

int find_summ(int a[]);

void sort(int a[]);

int a[N];

int main()

{

FILE* file;

int result,i;

char str[10];

file = fopen("file.dat","w");

if (file == NULL)

{

fprintf(stderr,"Cannot open file for write\n");

getch();

return -1;

}

generate_elements(a);

print_elements(a);

result = find_min(a);

printf("Minimalny element massiva raven %d\n",a[result]);

result = find_summ(a);

printf("Summa elementov massiva posle pervogo nulya ravna %d\n",result);

sort(a);

for (i = 0;i < N;i++)

fprintf(file,"%d ",a[i]);

fclose(file);

printf("===========SORTED=================\n");

file = fopen("file.dat","r");

if (file == NULL)

{

fprintf(stderr,"Cannot open file for read\n");

getch();

return - 1;

}

for(i = 0;i < N;i++)

{

fscanf(file,"%d ",&result);

printf("%d ",result);

}

// print_elements(a);

fclose(file);

getch();

return 0;

}

void generate_elements(int a[])

{

int i;

time_t t;

srand(time(&t));

for(i = 0;i < N;i++)

a[i] = rand() % 100;

}

void print_elements(int a[])

{

int i;

for (i = 0;i < N;i++)

printf("%d ",a[i]);

printf("\n");

}

int find_min(int a[])

{

int i;

int min,index;

min =fabs( a[0]);

for(i = 1;i < N;i++)

if (a[i] < min)

{

min = fabs(a[i]);

index = i;

}

return index;

}

int find_summ(int a[])

{

int i,first_zeroi = N;

int summ = 0;

for(i = 0;i < N;i++)

if (a[i] == 0)

{

first_zeroi = i;

break;

}

// printf("first_zeroi = %d\n",first_zeroi);

for(i = first_zeroi;i < N;i++)

{

summ += fabs(a[i]);

// printf("!");

}

return summ;

}

void sort(int a[])

{

int a2[N];

int i,j = 0;

for(i = 0;i < N;i+=2)

{

a2[j] = a[i];

j++;

}

j=5;

for(i = 1;i < N;i+=2)

{

a2[j] = a[i];

j++;

}

for(i = 0;i < N;i++)

for(j=0;j<N;j++)

a[i] = a2[j];

}

Соседние файлы в папке Шемяков