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

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

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

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

07.11.2013, 00:10. Просмотров 304. Ответов 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;
}

Не подскажете как сделать поиск используя рекурсию????
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.11.2013, 00:10
Здравствуйте! Я подобрал для вас темы с ответами на вопрос поиск через рекурсию (C++):

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

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

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

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

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

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

3
ValeryS
Модератор
6653 / 5062 / 470
Регистрация: 14.02.2011
Сообщений: 16,926
07.11.2013, 00:13 #2
Цитата Сообщение от GeForce46 Посмотреть сообщение
Не подскажете как сделать поиск используя рекурсию????
а каким боком здесь рекурсия?
или чтоб было?
0
GeForce46
0 / 0 / 0
Регистрация: 28.05.2013
Сообщений: 18
07.11.2013, 00:21  [ТС] #3
Цитата Сообщение от ValeryS Посмотреть сообщение
а каким боком здесь рекурсия?
или чтоб было?
мне по заданию нужно использовать массив структур и рекурсивную функцию
0
ValeryS
Модератор
6653 / 5062 / 470
Регистрация: 14.02.2011
Сообщений: 16,926
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
а второй постулат, сиречь выход?????
короче я лично вижу цикл но никак не рекурсию
если ты сможешь словами описать рекурсию значит сможешь и запрограммировать
лично я смогу, но не хочу, потому что это есть глупость не сусветная
принцип бритвы Оккамы
"Не плодите сущности без необходимостиЭ
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.11.2013, 00:39
Привет! Вот еще темы с ответами:

Число Фибоначчи через рекурсию - C++
Для заданного числа n посчитать числа ФИбоначчи (то есть число будет равно суме двух предыдущих), которое задано след. соотношениями:...

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

Не высчитывает корень через рекурсию - 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++
Описать логическую функцию ПОТОМОК(А,В), проверяющую, является ли человек с именем В потомком (ребенком, внуком, правнуком) человека с...


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

Или воспользуйтесь поиском по форуму:
4
Yandex
Объявления
07.11.2013, 00:39
Ответ Создать тему
Опции темы

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