Новосибирский государственный технический университет

Кафедра вычислительной техники


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

по дисциплине «Программирование»

3.2

Вариант:6

Группа: АМ-216

Бригада:6

Студенты:

Новосибирск 2002


1.  Задание.

Найти наименьшее общее кратное всех элементов массива (то есть числа, которое делится на все элементы).

2.  Содержательное описание алгоритма.

Определяем максимальное число с помощью цикла. проверяем делимость числа с помощью 2 вложенных циклов: в первом задаем проверяемое число b (от 1 до максимального значения массива); во втором проверяем, делятся ли все элементы массива на число b. Если делятся все - запоминаем b в f. После перебора всех b выводим f.

3.  Исходный текст программы.

#include <stdio. h>

#include <conio. h>

#include <stdlib. h>

#pragma hdrstop

//

#pragma argsused

void main()

{ int n=0,a[100],b, c,d, e,f;

f=0;

while (n<3)

{ printf("Введите кол-во элементов в массиве (3-100) N=");

scanf("%d",&n);

};

for (b=0;b<n;b++)

{ printf(" A[%d]=",b);

scanf("%d",&a[b]);

};

e=0;

for (b=0;b<n;b++)

if (e<a[b]) e=a[b];

for (b=2;b<=e;b++)

{ c=0;

while(a[c]%b==0)

{ c++;

if (c>=n) break;

};

if (c>=n) f=b;

} ;

if (f!=0)

printf("\n\nНаибольшее общее кратное=%d",f);

else

printf("\n\nОбщее кратное не найдено!");

getch();

};

4.  Результаты работы программы.

Введите кол-во элементов в массиве (3-100) N=3

A[0]=25

A[1]=500

A[2]=300

Наибольшее общее кратное=25