• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

  • 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Поиск

  • Автор темы Firiat
  • Дата начала
Статус
Закрыто для дальнейших ответов.
F

Firiat

Здорова всем. Как организовать две функции поиска : одна функция ищет по полю "Марка", а вторая функция ищет по "Фамилии владельца и Году выпуска"??? Спс)))
C++:
//методы и конструкторы
# include <string.h>
#ifndef __DATE_H
#define __DATE_H

class Car
{
char *marka;
int god;
int nomer;
char *familiya;
public:
Car ::Car () {marka=new char; *marka='\n'; god=0; nomer=0;familiya=new char; *familiya='\n';};
Car (char *n,char *k,int s,int b);
int get_god(){return god;}
int get_nomer() {return nomer;}
char * get_marka() {return marka;}
char * get_familiya() {return familiya; }
void vvod ();
void vivod ();
void poisk(char *m);
};
#endif

C++:
//тело
# include <iostream>
# include <conio.h>
# include <math.h>
# include "glavnoe.h"

using namespace std;

void Car::vvod ()
{
cout <<" Введите марку машины:\n";
cin >> marka;
cout << " Введите год выпуска машины: \n";
cin >> god;
cout << " Введите номер машины: \n";
cin >> nomer;
cout << " Введите фамилию автовладельца: \n ";
cin >> familiya; 
}

void Car::vivod ()
{
cout<<"-------------------------------------------\n";
cout<<"Марка машины : "<<marka<<"\n";
cout<<"-------------------------------------------\n";
cout<<"Фамилия автовладельца: "<<familiya<<"\n";
cout<<"-------------------------------------------\n";
cout<<"Номер машины: "<<nomer<<"\n";
cout<<"-------------------------------------------\n";
cout<<"Год выпуска машины: "<<god<<"\n";
cout<<"-------------------------------------------\n";
cout<<"\n\n\n";
}

Car ::Car (char *n,char *k,int s,int b)
{
marka=new char;
familiya=new char;
strcpy(marka,n);
strcpy(familiya,k);
god=s;
nomer=b;
}

void poisk (char *m);
{
for(int i=0;;i++)

}
C++:
//main
# include <iostream>
# include <conio.h>
# include <math.h>
# include "glavnoe.h"
using namespace std;
void main ()
{
bool f=false;
setlocale (LC_ALL,".1251");
Car mas[10];
Car t;
U:
cout << "************************************ \n";
cout << "  1. Регистрация машин \n";
cout << "  2. Вывод зарегистрированных машин\n";
cout << "  3. Поиск по марке\n";
cout << "  4. Поиск по фамилии и году\n";
cout << "************************************ \n";
char k;
cin >>k;
cout<<"\n";
switch (k)
{
case '1':
{
int m;
cout << " Сколько машин нужно для регистрации: \n";
cin >> m;
for ( int i=0;i<m;i++)
{
mas[i].vvod();
}
break;	
}
case '2':
{
cout << " Вывод массива машин : \n";
mas[0].vivod();
break;
}
case '3':
{
cout << " Введите марку машины для поиска: ";
cin>>marka;
mas[0].poisk(marka);

}
default:cout<<"Ошибка";
break;
}
goto U;
getch (); 
}
 
L

lazybiz

Тут случай трудный на самом деле... Ты в курсе что у тебя даже без поиска программа работать не будет? А если и будет, то вопреки здравому смыслу.
Такая запись как: char *a = new char; выделяет один байт(!), а не строку или массив символов.
 
L

lazybiz

Она работает gut laugh.gif
Я чрезмерно рад.

Читай еще раз:
... А если и будет, то вопреки здравому смыслу.
Т.ч. исправляй. Поскольку даже без поиска она работает не так как надо, и реализацию поиска в программе, полной ошибок, делать бессмысленно.
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!