- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
- •Int main(int argc, char* argv[])
Написать рекурсивную функцию для нахождения факториала числа.
#include < conio.h>
#include < iostream.h>
int fact(int);
int main(int argc, char* argv[])
{
int n;
cout << "Vvedite znachenie factoriala n: ";
cin >> n;
cout << "Factorial chisla "<< n << " raven: " << fact(n) << endl;
getch();
return 0;
}
int fact(int n)
{
if (n<=0)
return 1;
else
return n*fact(n-1);
}
Написать рекурсивную функцию для нахождения наибольшего наименьшего общего делителя.
Используя следующее соотношение: если В делится на А нацело, то НОД(А,В)=А, иначе НОД(А,В)=НОД(В%А,А).
#include <iostream.h>
#include <conio.h>
int nod(int, int);
int main(int argc, char* argv[])
{
int a, b;
cout << "Vvedite chislo A: ";
cin >> a;
cout << "Vvedite chislo B: ";
cin >> b;
cout << "HOD(" << a << "," << b << ")=" << nod(a,b) << endl;
getch();
return 0;
}
int nod(int a, int b)
{
if (b%a==0)
return a;
else
return nod(b%a,a);
}
Написать рекурсивную функцию для нахождения максимального числа массива.
#include <conio.h>
#include <iostream.h>
int max(int);
int a[20];
int main(int argc, char* argv[])
{
int n, i;
cout << "Vvedite chislo elementov i: ";
cin >> n;
for (i=0; i<n; i++)
{
cout << "Vvedite element a[i]: ";
cin >> a[i];
}
cout << "Maksimalnij element raven: " << max(i) << endl;
getch();
return 0;
}
int max(int n)
{
if (n==0)
return a[0];
else
{
int m=max(n-1);
if (a[n]>m)
return a[n];
else
return m;
}
}
Написать рекурсивную функцию для нахождения чисел Фибоначчи, которые определяются следующим
рекурсивным соотношением: B0=0, B1=1, Bn=B(n-1)+B(n-2).
#include <conio.h>
#include <iostream.h>
int fib(int);
int main(int argc, char* argv[])
{
int n;
cout << "Vvedite chislo: ";
cin >> n;
cout << "Chislo Fibonachi ravno: " << fib(n) << endl;
getch();
return 0;
}
int fib(int n)
{
if (n<=1)
return n;
else
return fib(n-1)+fib(n-2);
}
Написать рекурсивную функцию для нахождения значения функции Аккермана А(т;п), которая определяется для всех неотрицательных
целых аргументов п и т следующим образом: А(т,п)=п+1, если т=0; А(т,п)=А(т-1,п), если п=0;А(т,п)=А(т-1,А(т,п-1)), если т>0, n>0.
#include <iostream.h>
#include <conio.h>
int akk(int, int);
int main(int argc, char* argv[])
{
int n, m;
cout << "Vvedite chislo m: ";
cin >> m;
cout << "Vvedite chislo n: ";
cin >> n;
cout << "Znachenie funktsii Akkermana A(" << m << ", " << n << ")=" << akk(m, n) << endl;
getch();
return 0;
}
int akk(int m, int n)
{
if (m!=0&&n!=0)
return akk(m-1,akk(m,n-1));
else
{
if (m==0&&n!=0)
return n+1;
else
return akk(m-1,1);
}
}
Создать файл, занести в него 5 целых чисел. Отсортировать данные в файле по возростанию любым способом.
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
#include <stdio.h>
FILE *fl;
void puz();
void viv();
int n, a[20];
Int main(int argc, char* argv[])
{
int i;
cout << "Vvedite chislo elementov: ";
cin >> n;
if ((fl=fopen ("fl.dat", "wb"))==NULL)
{
cout << "Ochibka pri sozdanii" << endl;
exit (1);
}
for (i=0; i<n; i++)
{
cout << "Vvedite chislo " << i+1 << ": ";
cin >> a[i];
fwrite (&a[i], sizeof (int), 1, fl);
}
puz();
viv();
fclose(fl);
getch();
return 0;
}
void puz()
{
int i,j;
int m;
for (i=1; i<=n; i++)
for (j=n-1; j>=i; j--)
{
if (a[j-1]>a[j])
{
m=a[j-1];
a[j-1]=a[j];
a[j]=m;
}
}
if ((fl=fopen ("fl.dat", "rb+"))==NULL)
{
cout << "oshibka pri otkritii" << endl;
exit(1);
}
for (i=0; i<n; i++)
fwrite(&a[i], sizeof (int), 1, fl);
fclose(fl);
}
void viv()
{
int i;
if ((fl=fopen("fl.dat", "rb"))==NULL)
{
cout << "oshibka pri otkritii" << endl;
exit(1);
}
for (i=0; i<n; i++)
{
cout << a[i] << " ";
cout << endl;
}
fclose(fl);
}
Создать бинарный файл, занеста в него 5 целых чисел. Прочитать данные из файла и вывести на экран четные числа.
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
#include <stdio.h>
FILE *fl;
void viv();
int n, a[20];
Int main(int argc, char* argv[])
{
int i;
cout << "Vvedite chislo elementov: ";
cin >> n;
if ((fl=fopen ("fl.dat", "wb"))==NULL)
{
cout << "Ochibka pri sozdanii" << endl;
exit (1);
}
for (i=0; i<n; i++)
{
cout << "Vvedite chislo " << i+1 << ": ";
cin >> a[i];
fwrite (&a[i], sizeof (int), 1, fl);
}
viv();
fclose(fl);
getch();
return 0;
}
void viv()
{
int i;
if ((fl=fopen("fl.dat", "rb"))==NULL)
{
cout << "oshibka pri otkritii" << endl;
exit(1);
}
for (i=0; i<n; i++)
{
if (a[i]%2==0)
cout << a[i] << " ";
}
cout << endl;
fclose(fl);
}
Создать файл, занести в него 5 символов. Прочитать данные из файла и вывести количество символов "С".
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
FILE *fl;
void vvod();
void rez();
char a[6];
Int main(int argc, char* argv[])
{
vvod();
rez();
getch();
return 0;
}
void vvod()
{
int i;
if ((fl=fopen("fl.dat", "w"))==NULL)
{
cout << "Ochibka pri sozdanii" << endl;
exit (1);
}
for (i=0; i<5; i++)
{
cout << "Vvedite simvol " << i+1 << ": ";
cin >> a[i];
fwrite (&a[i], sizeof (char), 1, fl);
}
fclose(fl);
}
void rez()
{
int i, n=0;
if ((fl=fopen("fl.dat", "r"))==NULL)
{
cout << "Ochibka pri otkritii" << endl;
exit (1);
}
for (i=0; i<5; i++)
{
if (a[i]=='c')
n++;
}
cout << "Kolichestvo 'C': " << n << endl;
fclose(fl);
}
Создать файл, занести 8 чисел, прочитать файл и вывести максимальное число.
#include <conio.h>
#include <iostream.h>
#include <stdlib.h>
#include <stdio.h>
FILE *fl;
int a[8];
void vvod();
void rez();