Структурированная запись главного алгоритма 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Структурированная запись главного алгоритма



1. Ввод с клавиатуры размера массивов n;

2. Обращение к алгоритму Inmas для ввода массива A: Inmas (A, n);

3. Обращение к алгоритму Inmas для ввода массива B: Inmas (B, n);

4. Обращение к алгоритму Out mas для вывода массива A: Outmas (A, n);

5. Обращение к алгоритму Out mas для вывода массива B: Outmas (B, n);

6. Обращение к алгоритму Min _ el для нахождения минимального элемента массива A: min a = Min _ el (A, n);

7. Обращение к алгоритму Min _ el для нахождения минимального элемента массива b: min b = Min _ el (B,n);

8. Вычисление разности минимальных элементов массивов Res = mina - minb;

9. Вывод на экран значения Res.

Схема алгоритма

Текст программы на языке Си

#include <stdio.h>

#define N 30

void inmas(double *a,int n);

double min_el(double *a,int n);

void outmas(double *a,int n);

void main()

{

int n;

double mina,minb,a[N],b[N],res;

printf("n=");

scanf("%d",&n);

printf("Введите элементы массива A\n");

inmas(a,n);

printf("\n Введите элементы массива B\n");

inmas(b,n);

printf("Мвссив A\n");

outmas(a,n);

printf("\nМассив B\n");

outmas(b,n);

mina=min_el(a,n);

minb=min_el(b,n);

res=mina-minb;

printf("\n res= %5.2lf\n",res);

}

 

void inmas(double *x,int n)

{

int i;

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

   scanf("%lf",x+i);

}

 

void outmas(double *x,int n)

{

int i;

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

printf("%4.1lf",*(x+i));

}

double min_el(double *x,int n)

{

int i;double min;

min=*x;

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

if (*(x+i)<min)

    min=*(x+i);

return min;

}

Текст программы на языке Паскаль

Program main_48;

Type

Mas = array[1..30] of real;

Var

a,b: mas;

n: integer;

res: real;

function minel(x:mas; n:integer):real;

   var

    i:integer;

    minx:real;

begin

minx:=x[1];

for i:=2 to n do

      if x[i]<minx then minx:=x[i];

    minel:=minx;

   end;

procedure inmas(var x:mas; n:integer);

   var

i:integer;

   begin

for i:=1 to n do readln(x[i]);

   end;

procedure outmas(x:mas; n:integer);

   var

   i:integer;

   begin

    for i:=1 to n do write(x[i]:4:1);

   writeln;

 end;

begin

   writeln ('Введите n ');

   readln(n);

   writeln('Введите массив a');

   inmas(a,n);

   writeln('Введите массив b');

   inmas(b,n);

   writeln(' Массив a');

   outmas(a,n);

   writeln(' Массив b');

   outmas(b,n);

   res:=minel(a,na) - minel(b,nb);

writeln('Разность минимумов = ',res:4:1);

end.

Текст программы на языке Фортран

Program main_48

implicit none

real minel,res

real, allocatable:: a(:), b(:)

integer i, j, n

print *,' Введите n'

read *, n

allocate (a(n), b(n))

print*,' Введите массив a'

call inmas(a,n)

print*,' Введите массив b'

call inmas(b,n)

print*,' Массив a'

call outmas(a,n)

print*,' Массив b'

call outmas(b,n)

res= minel(a,n)- minel(b,n)

print'(A,F4.1)', 'Разность минимумов =',res

deallocate(a,b)

end

 

real function minel(x, n)

implicit none

   integer, intent(in):: n

   real, intent(in):: x(n)

   integer i

real minx

minx=x(1)

do i=2,n

if (x(i)<minx) minx=x(i)

enddo

minel=minx

end function minel

 

subroutine inmas(x,n)

implicit none

 integer, intent(in):: n

 real, intent(out):: x(n)

 read *, x

end subroutine inmas

 

subroutine outmas(x,n)

 implicit none

   integer,intent(in):: n

 real,intent(in):: x(n)

 print '(<nx>(F3.1,2x))',x

end subroutine outmas

 

Программа на языке Python

# Ввод массива из n элементов:

def Inmas(n):

A = [] # Создаем пустой список

for i in range(1,n+1):

print("Введите {0}-й элемент: ".format(i))

A.append(float(input()))

return A

 

# Вывод массива из N элементов:

def Outmas(MasName,M,N):

for i in range(1,N+1):

print("{0}[{1}]={2} ".format(MasName,i,M[i-1]))

return None

 

# Поиск значения наименьшего элемента

# массива x из nx элементов

def Min_el(x, nx):

minx = x[0]

for i in range(1, nx):

if x[i] < minx:

minx = x[i]

return minx

 

# Главная программа

print("Введите n -- размер массивов A и B: ")

n=int(input()) 

print("Введите массив A:")

A=Inmas(n)

print("Введите массив B:")

B=Inmas(n)

print("Введенный массив A:")

Outmas("B",B,n)

print("Введенный массив B:")

Outmas("B",B,n)

mina = Min_el(A, n)

minb = Min_el(B, n)

Res = mina - minb

print("Разность минимумов = {0}".format(Res))

Программа в системе Матлаб

% Главная программа

n=input('введите n=');

disp('введите массив A')

A=Inmas(n)

disp('введите массив B')

B=Inmas(n)

disp(' Массив A')

disp(A)

disp(' Массив B')

disp(B)

% В системе Матлаб для данной задачи оформление

% вывода массива в виде функции нецелесообразно.

mina=Min_el(A,n);

minb=Min_el(B,n);

res=mina-minb;

disp(sprintf('res=%4.3f',res))

 

% Функция ввода массива

function X=Inmas(n)

for i=1:n

disp(sprintf('элемент(%g)=',i))

X(i)= input(' ');    

end

end

 

% Функция нахождения минимального элемента

function minx=Min_el(X,n)

minx=X(1);

for i=2:n

if X(i)< minx

   minx=X(i);

end

end



Поделиться:


Последнее изменение этой страницы: 2021-04-12; просмотров: 106; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.222.115.120 (0.007 с.)