![](/user_photo/2706_HbeT2.jpg)
- •Фгб оу впо «московский государственный университет
- •Файлы последовательного доступа
- •Файлы произвольного доступа
- •Операции над файлами
- •Задача 1.1
- •Задача 1.2
- •Задача 1.3.
- •Задача 2.1.
- •Задача 2.2.
- •Задача 2.3.
- •Задача 3.1.
- •Задача 3.2.
- •Задача 3.3.
- •Задача 3.4.
- •Задача 3.5
- •Задача 4.1
- •Задача 4.2
- •Задача 4.3
- •Задача 4.4
- •Задача 5.1
- •Задача 5.2
- •Задача 5.3
- •Задача 5.5
- •Задача 6.1
- •Задача 6.2
- •Задача 6.3
- •Задача 6.4
- •Задача 7.1
- •Задача 7.3
- •Задача 7.4
- •Задача 8.1
Задача 3.2.
Ввести с клавиатуры М чисел. Найти произведение отрицательных чисел.
Блок-схема.
начало
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-gZoCc4.png)
М – количество чисел.
М
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-SrTfYP.png)
i=0; i<M; i++
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-QYWMR9.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-Pm9gsg.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-v5qHyy.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-uapplQ.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-avClrx.png)
x[i]<0
+ -
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-WcoqwL.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-ogqdxn.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-H8biZU.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-fVETgf.png)
S=S*x[i]
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-5GjEPG.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-WPmqmB.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-rT7XsP.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-Zlxzdr.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-ZuAS2d.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-6wxG_V.png)
A[M]
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-EmZJem.png)
конец
Программный код.
#include "iostream"
#include <math.h>
using namespace std;
int pro(int x[],int M)
{int i;
int S=1;
for(i=0;i<M;i++)
{if(x[i]<0)//Условие
S=S*x[i];}
return S;
}
void main()
{setlocale(LC_ALL,"Russian");
{const int M=5;//Вводим количество элементов массива - 5
int A[M];
cout<<"Massiv"<<endl;//Вывод массива
for(int i=0;i<M;i++)
{cin>>A[i];}
cout<<"Произведение отрицательных чисел="<<pro(A,M)<<endl;
}
}
Скриншот.
Задача 3.3.
Задано натуральное число N. Найти количество натуральных чисел, не превосходящихNи не делящихся ни на одно из чисел 2,3,5.
Блок-схема.
начало
N– натуральное число.
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-NP_jjG.png)
a
a– количество чисел, удовлетворяющих условию задачи.
p– вывод количества чисел.
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-O83Ry3.png)
a=0; a<=N; a++
+ -
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-8z0r4R.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-Kjt7Ba.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-krNUiO.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-kfH9Tg.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-IAx4vY.png)
a%2!=0
a%3!=0
a%5!=0
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-ti05Ui.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-iokQfF.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-_Qd8C0.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-oZX15F.png)
p
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-v7dcUJ.png)
конец
Программный код.
#include "iostream"
#include <math.h>
using namespace std;
void main()
{
int a,N,p=0;
cout<<"N=";
cin>>N;//Ввод с клавиатуры числа
for(a=0;a<=N;a++)//Цикл
{if(a%2!=0 && a%3!=0 && a%5!=0)//Условие
p++;}
cout<<p;}//Вывод количества чисел, удовлетворяющих условию
Скриншот.
Задача 3.4.
Бизнесмен взял ссуду mтысяч рублей в банке под 20% годовых. Через сколько лет его долг превыситsтысяч рублей, если за это время он не будет отдавать долг?
Блок-схема.
начало
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-qiPtOo.png)
m, s
m– ссуда (тысяч рублей) .
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-0N2Gt9.png)
s– число, с которым сравниваем .
i=0
n–годовой процент (в рублях).
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-uEeJwV.png)
k – оплата за год.
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-LdYloi.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-iEVUUI.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-2RwEgT.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-BkI2b6.png)
s>m
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-Adz2yO.png)
m=m+m*0.2
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-7Tqy2F.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-B1CP12.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-bTS525.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-3S1dVO.png)
i
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-pBggsb.png)
конец
Программный код.
#include "iostream"
#include <math.h>
using namespace std;
void main()
{setlocale(0,"");
float m,s,n,k;
float i=0;
cout<<"m=";
cin>>m;
cout<<"s=";
cin>>s;
n=(m/100.)*20;//Нахождение годового процента в валюте.
k=m+n;//Оплата за год, вместе с комиссией.
if(s>m) cout<<"Cсуда не превышает данную сумму";else {while(s>m)
{m=m+m*0.2;
i=i+1;
}cout<<"Через "<<i<<" года долг превысит ";}
}
Скриншот.
Задача 3.5
Дано целое число N>2 и две вещественные точки на числовой оси:A,B(A<B). Отрезок [A,B] разбит на равные отрезки длины Н с концами вNточках вида А,А+Н,А+2Н, А+3Н,…, В. Вывести значение Н и набор изNточек, образующий разбиение отрезка [A,B].
Блок-схема.
начало
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-IGGyDH.png)
N– целое число.
N>2, A, B
A,B– вещественные числа.
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-fF2z3s.png)
A>=B
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-gvph3U.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-mjtyGd.png)
+ -
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-kyQQh6.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-3iUmzz.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-CY4Ca7.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-fuirYI.png)
Не верное условие!
H=(B-A)/(N-1)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-5nXCG_.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-YZHJdS.png)
H
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-tHBb5D.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-MWZ8qo.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-dt2XDk.png)
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-CG0qCK.png)
x
![](/html/2706/132/html_cnosCWUzh0.mZeC/img-fk_XTf.png)
конец
Программный код.
#include "iostream"
#include <math.h>
using namespace std;
int main()
{setlocale(LC_ALL,"Russian");
int N;
cout<<"N=";
cin>>N;//Ввод с клавиатуры целого числа N
if(N<=2) {cout<<"Недопустимое значение переменной N"<<endl; return 0;}
float A,B,H,x;
cout<<"A=";
cin>>A;//Ввод с клавиатуры вещественного числа А
cout<<"B=";
cin>>B;//Ввод с клавиатуры вещественного числа В
if(A>=B) {cout<<"Не верное условие!"<<endl; return 0;}//
H=(B-A)/(N-1);
cout<<"H="<<H<<endl;
x=A;//Переменной х присваиваем значение вещ-ного числа А
while(x<=B)
{
cout<<"x="<<x<<endl;
x=x+H;//Шаг
}
}
Скриншот.