- •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[])
- •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 << "vod znach. Fact-la, n: ";
cin >> n;
cout << " Fact-l chisla "<< n << " raven: " << fact(n) << endl;
getch();
return 0;
}
int fact(int n)
{ if (n<=0) return 1;
else return n*fact(n-1);
}
Написать рекурсивную функцию для нах-дния
MAX, MIN общего делителя.
Используя следующее соотношение:
если В /А нацело, то НОД(А,В)=А, иначе НОД(А,В)=НОД(В%А,А).
#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);
}
Написать рекурсивную функцию для нахождения
MAX числа массива.
#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 << "max element =:"<< 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;
еlse 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 << "Zn-e fu-ii Akker.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 << "wod. kol. el-ov.: ";
cin >> n;
if ((fl=fopen ("fl.dat", "wb"))==NULL)
{ cout << "error 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];