Задача № 406
Пусть задан вектор
х (х1, х2, х3… хn).
Составить подпрограмму-функцию для
вычисления величины.
N=0,
если х1≠0
N=n,
если х1= х2= х3=…- хn=0
N=m,
если х1= х2= х3=…=хm=0
и хm+1≠0
(m<n)
Алгоритм:
Ввод
Запрос числа
элементов массива
Запрос и ввод
массива
Эхо-вывод на экран
массива
Объявление потока
вывода в файл
#include
<vcl.h> //
Я не знаю что это означает, оно автоматически
задается в Builder6
#pragma
hdrstop // Я не знаю что это
означает, оно автоматически задается
в Builder6
#pragma
argsused // Я не знаю что это
означает, оно автоматически задается
в Builder6
#include<iostream.h>
#include<conio.h>
#include<fstream.h>
int
N(int n, double X[]); // прототип
ф-ции
int
N(int n, double X[])
{
int
i;
int
result=-1;
if(X[0]!=0)
result=0;
else{
result=0;
for(i=0;i<n;i++){
if(X[i]==0)
result=i+1;
else{
result=i;
break;
}
}
}
return
result;
}
void
main(){
int
n;
int
i;
double
X[100];
cout<<"vvedite
0<n<=100"<<endl; //запрос
числа элементов
массива
cin>>n;
//ввод
while(n>100||n==0||n<0){
cout<<"Error!
0<n<=100"<<endl;
cout<<"vvedite
0<n<=100"<<endl;
cin>>n;}
//проверка n<=100 и n=0
cout<<"vvedite
massiv X:"<<endl; //запрос и ввод массива
for(i=0;i<n;i++)
cin>>X[i];
cout<<"vvedenniy
massiv:"<<endl; //эхо-вывод
на экран
массива
for(i=0;i<n;i++)
// и значения ф-ции
cout<<X[i]<<"
";
cout<<endl;
cout<<"function
N="<<N(n,X)<<endl;
ofstream
ptk("k106.txt"); //oбъявления потока вывода
в файл
if(ptk==0)cout<<"error
otkr faila"<<endl; //проверка открытия
файла
ptk<<"vvedenniy
massiv:"<<endl; //эхо-вывод в файл массива
for(i=0;i<n;i++)
ptk<<X[i]<<"
";
ptk<<endl;
ptk<<"function
N="<<N(n,X)<<endl;
getch();
}
Тест:
vvedenniy massiv:
1
0 0 0
function
N=0
Номер задачи
|
Входные данные
|
Выходные данные
для С++
|
Выходные данные
для MathCAD
|
9
|
Страница 3
|
Страница 4
|
Страница 1.1
|
116 г
|
Страница 4
|
Страница 6
|
Страница 1.2
|
555
|
Страница 6
|
Страница 9
|
Страница 1.3
|
684
|
Страница 9
|
Страница 12
|
|
406*
|
Страница 13
|
Страница 16
|
|
Список
литературы:
Разработка
программ на C++
при выполнении курсовых и лабораторных
работ (методические указания) Назарова
М.В.
Borland C++ Builder. Освой
самостоятельно
"Программирование
в C++ Builder 6" (с) Архангельский А.Я.