Программирование на C / C++ / Лабораторные работы / Лабораторная работа №6
.doc
Уфимский Государственный Авиационный Технический Университет
Лабораторная работа №6
Функции
Выполнил студент
группы
Проверил доцент
кафедры АПрИС
Бежаева О.Я.
Уфа 2008
1.Цель работы: Знакомство и получение навыков реализации функций в языке С/С++.
2.Условия задания:
Заданы k векторов . Найти их сумму
Процедура: вычисление суммы двух векторов
3.Решение задания
1)Алгоритм решения задания в виде блок-схемы
input (a,b,c,N)
mult (S,a,b,c,N)
Начало
Вывод
S[i]
i++
input (a,b,c,N)
i=0
Ввод
a[i]
i<N
i++
i=0
Ввод
b[i]
i<N
i++
i=0
i<N
Конец
i=0
Ввод
c[i]
i<N
i++
mult(S,a,b,c,N)
i=0
i<N
i++
S[i]=a[i]+b[i]+c[i]
Возврат
Возврат
2) Текст программы на языке C++:
#include <iostream.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
int i;
const int N=3;
void input(double a[],double b[],double c[], int k);
void mult(double s[],double a[],double b[],double c[],int k);
void main()
{
double a[N],b[N],c[N],S[N];
input (a,b,c,N);
mult(S,a,b,c,N);
cout<<"Summa =";
for(i=0;i<N;i++)
cout<<S[i]<<" ";
}
void input(double a[],double b[],double c[],int k)
{cout<<”Bbedite vectora a,b,c\n”;
for(i=0;i<k;i++)
cin>>a[i];
for(i=0;i<k;i++)
cin>>b[i];
for(i=0;i<k;i++)
cin>>c[i];
}
void mult(double S[],double a[],double b[],double c[],int k)
{
for(i=0;i<k;i++)
S[i]=a[i]+b[i]+c[i];
}
3)Результат тестирования программы:
a{1;2;5}, b{5;3;4}, c{1;0;2}. Их суммой будет {7;5;11}