Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
GeForce46
0 / 0 / 0
Регистрация: 28.05.2013
Сообщений: 18
#1

поиск через рекурсию - C++

07.11.2013, 00:10. Просмотров 296. Ответов 3
Метки нет (Все метки)

С помощью массива структур описать каталог компьютерных игр, предусмотрев следующие характеристики: название, производитель, год издания, жанр, объем на диске, платформа. Предусмотреть операцию поиска по жанру, платформе.


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#include <conio.h>
#include <iostream>
#include <stdio.h>
#include <locale>
using namespace std;
 
int main()
{ setlocale(LC_ALL,"Russian");
int i,j,n=5,q=0,s;
char poisk1[20];
char poisk2[20];
char key;
struct a
{
    char name[20],vyrobnyc[20], zhanr[20], platform[20];
    int year, ves;
    };
struct a b[5];
for(i=0;i<n;i++)
    {
    cout<<"Назва гри:";
    cin>>b[i].name;
    cout<<"Виробник:";
    cin>>b[i].vyrobnyc;
    cout<<"Жанр:";
    cin>>b[i].zhanr;
    cout<<"Платформа:";
    cin>>b[i].platform;
    cout<<"Об`єм:";
    cin>>b[i].ves;
    cout<<"Рік видання:";
    cin>>b[i].year;
    cout<<"\n ------------------------------------------\n";
    cout<<"Продовжити? (y/n):";
    cin>>key;
    if (key=='n')break;
    q++;
    }
cout<<"\n ------------------------------------------\n";
cout<<"Пошук за жанром:";
cin>>poisk1;
for(i=0;i<q;i++)
{
    if(b[i].zhanr==poisk1)
    {
    cout<<"Назва: "<<b[i].name<<"\n";
    cout<<"Виробник:"<<b[i].vyrobnyc<<"\n";
    cout<<"Жанр:"<<b[i].zhanr<<"\n";
    cout<<"Платформа:"<<b[i].platform<<"\n";
    }
    getch();
}
cout<<"\n ------------------------------------------\n";
cout<<"Пошук за платформою:";
cin>>poisk2;
for(i=0;i<q;i++)
{
    if(b[i].platform==poisk2)
    {
    cout<<"Назва: "<<b[i].name<<"\n";
    cout<<"Виробник:"<<b[i].vyrobnyc<<"\n";
    cout<<"Жанр:"<<b[i].zhanr<<"\n";
    cout<<"Платформа:"<<b[i].platform<<"\n";
    }
    getch();
}
return 0;
}

Не подскажете как сделать поиск используя рекурсию????
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.11.2013, 00:10     поиск через рекурсию
Посмотрите здесь:

Поиск кратчайшего пути в матрице через рекурсию - C++
Есть задача: найти кратчайший путь в матрице,представляющий из себя сумму значений ее элементов. Матрица размера 10х10. Я реализовал сам...

Бинарный поиск через рекурсию: разобрать логику кода - C++
Помогите , уже второй день мучаюсь с алгоритмом бинарного поиска через рекурсию . Не понимаю откуда берутся значения которые мне выдает...

последовательность через рекурсию - C++
нужна ваша помощь задача такая: написать рекурсивную функцию для ввода последовательности чисел и вывода ее на экран в обратном...

Факториал через рекурсию - C++
Подскажите, как можно вычислить факториал некоторого числа через рекурсию функций (через цикл либо другим методом не интересует). Есть...

Число из 10-ой в 2-ю ,через рекурсию. - C++
Доброго дня. Требуется написать программу (из 2-ой в 10-ю) .С использованием рекурсии. Выход данной программы 0. Что следует поправить? ...

НОД через рекурсию - C++
Нужно написать программу для нахождения НОД через рекурсию по такому алгоритму: 1) задать два числа; 2) если числа равны, то взять...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ValeryS
Модератор
6551 / 5017 / 463
Регистрация: 14.02.2011
Сообщений: 16,738
07.11.2013, 00:13     поиск через рекурсию #2
Цитата Сообщение от GeForce46 Посмотреть сообщение
Не подскажете как сделать поиск используя рекурсию????
а каким боком здесь рекурсия?
или чтоб было?
GeForce46
0 / 0 / 0
Регистрация: 28.05.2013
Сообщений: 18
07.11.2013, 00:21  [ТС]     поиск через рекурсию #3
Цитата Сообщение от ValeryS Посмотреть сообщение
а каким боком здесь рекурсия?
или чтоб было?
мне по заданию нужно использовать массив структур и рекурсивную функцию
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.11.2013, 00:39     поиск через рекурсию
Еще ссылки по теме:

Не высчитывает корень через рекурсию - C++
double kor(double a) { double Xn=0.5*(1+a); if (fabs(Xn-a)&gt;0.0001) return a; else return Xn=0.5*(kor(a-1)+a/kor(a-1)); } void...

Описание функции через рекурсию - C++
Описать логическую функцию ПОТОМОК(А,В), проверяющую, является ли человек с именем В потомком (ребенком, внуком, правнуком) человека с...

Найти тангенс x через рекурсию - C++
/*Вычисление тангенса задано формулой Найти тангенс(к примеру,пи/3, n=4) tg(x) = ---------x----------- x^2 ...

Имитация цикла for через рекурсию - C++
Имитация цикла for через рекурсию


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
ValeryS
Модератор
6551 / 5017 / 463
Регистрация: 14.02.2011
Сообщений: 16,738
07.11.2013, 00:39     поиск через рекурсию #4
GeForce46,
ты вообше представляешь что такое рекурсивная функция
не это не функция которая "вызывает сама себя"
хотя формально это верно
это целая идеология
возьмем факториал, пример который обычно сразу всем приводят
два постулата
факториал есть произведение всех чисел от 1 до n
факториал 1 и 0 есть 1
тут рекурсия сама собой напрашивается
факториал есть произведение n на факториал n-1
вот она функция
C++
1
2
3
4
5
6
int fact( int n)
 {
if n<=1)
   return 1;
 fact(n-1);
}
теперь возьмем твою функцию искать в n значений?
можно с трудом привести(притянуто за уши) если n чему то там не равна то искать n-1
а второй постулат, сиречь выход?????
короче я лично вижу цикл но никак не рекурсию
если ты сможешь словами описать рекурсию значит сможешь и запрограммировать
лично я смогу, но не хочу, потому что это есть глупость не сусветная
принцип бритвы Оккамы
"Не плодите сущности без необходимостиЭ
Yandex
Объявления
07.11.2013, 00:39     поиск через рекурсию
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru