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

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

ФЭСТ ВТ-11

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

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

Тема: «Одномерный массив»

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

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

Москва 2011 г.

1. Условие задания:

В одномерном массиве, состоящем из n-элементов, вычислить:

а) минимальный элемент массива;

б) сумму элементов массива, расположенных между первым и последним положительными элементами.

Преобразовать массив таким образом, чтобы сначала располагались все элементы равные нулю, потом - все остальные.

2. Данные:

1) Выходные данные min, s преобразованный массив a[i].

3. Блок-схема программы:

Начало

min=a[0]

i=0;i<10;i++

a[i]<min

min=a[i]

i=0; i<10;i++

a[i]>0

n1=i

i=10;i<n1;i--

a[i]>0

n2=i

i=n1=1;i<n2;i++

s+=a[i]

J=0;j<10;j++

I=0;i<10;i++

a[i+1]==0

b=a[i+1]

a[i+1]=a[i]

a[i]=b

I=0;i<10;i++

Вывод a[i]

Вывод min,s

Конец

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

#include <stdio.h>

#include <stdlib.h>

int main()

{ int i,j,b,min,s=0,n1=0,n2=0, a[10]={8,0,7,9,0,2,6,3,1,0};

min=a[0];

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

{if (a[i]<min) min=a[i];

}

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

if (a[i]>0)

{

n1=i;

break;

}

for(i=10;i>n1;i--)

if (a[i]>0)

{

n2=i;

break;

}

for(i=n1+1; i<n2; i++)

{ s+=a[i];

}

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

{

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

{

if(a[i+1] == 0)

{

b=a[i+1];

a[i+1]=a[i];

a[i]=b;

}

}

}

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

{

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

}

printf(" \n");

printf("min= %i s=%i \n",min, s);

system ("pause");

return 0;

}

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