Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Создать бинарный файл, занеста в него 5 целых чисел. Прочитать данные из файла и вывести на экран четные числа.

Читайте также:
  1. II. Данные для расчета расходов бюджета
  2. Беседа четвертая. ЧЕЛОВЕК НА ЭКРАНЕ ТЕЛЕВИЗОРА 1 страница
  3. Беседа четвертая. ЧЕЛОВЕК НА ЭКРАНЕ ТЕЛЕВИЗОРА 2 страница
  4. Беседа четвертая. ЧЕЛОВЕК НА ЭКРАНЕ ТЕЛЕВИЗОРА 3 страница
  5. Беседа четвертая. ЧЕЛОВЕК НА ЭКРАНЕ ТЕЛЕВИЗОРА 4 страница
  6. Биографические данные
  7. В названии файла с сочинением необходимо указать фамилию имя отчество участника и наименование населенного пункта, например, Иванов_Иван_Иванович_город_Новосибирск.pdf

Написать рекурсивную функцию для

Нахождения факториала числа.

#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];

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); }

 


Дата добавления: 2015-12-08; просмотров: 97 | Нарушение авторских прав



mybiblioteka.su - 2015-2024 год. (0.012 сек.)