![]() |
|
| Правила Форума редакция от 22.06.2020 |
|
|||||||
|
|
Окажите посильную поддержку, мы очень надеемся на вас. Реквизиты для переводов ниже. |
|
![]() |
|
|
Опции темы | Опции просмотра |
Language
|
|
|
#1
|
|
Неактивный пользователь
Регистрация: 07.11.2009
Сообщений: 6
Репутация: 0
|
Всем привет. Есть код программы рабочий, помогите из него сделать программу с классом и объектами
Код:
void main ( )
{
const int size = 20;
char str[size];
cin.getline(str,size);
ofstream ptk1("test18.txt");
cout<<"length of string is:"<<strlen(str)<<endl;
ptk1<<"length of string is:"<<strlen(str)<<endl;
if (strstr(str,"one"))
{
cout<<"one in the string"<<endl;
ptk1<<"one in the string"<<endl;
}
else
{
cout<<"ERROR!"<<endl;
ptk1<<"ERROR!"<<endl;
}
getch ();
}
Код:
class stroka{
public:
const int size = 20;
char str[size];
cin.getline(str,size);
ofstream ptk1("test18.txt");
cout<<"length of string is:"<<strlen(str)<<endl;
ptk1<<"length of string is:"<<strlen(str)<<endl; }
void main{
if (strstr(stroka,"one"))
{
cout<<"one in the string"<<endl;
ptk1<<"one in the string"<<endl;
}
else
{
cout<<"ERROR!"<<endl;
ptk1<<"ERROR!"<<endl;
}
getch ();
}
Последний раз редактировалось satyph; 07.11.2009 в 17:01.. |
|
|
|
| Реклама: | астры букет с доставкой | сколько стоит каркасный дом | частотник vacon | круизы из ярославля до астрахани | Кольцо из серебра |
|
|
#2
|
|
Неактивный пользователь
Регистрация: 30.11.2008
Сообщений: 1
Репутация: 0
|
А в чем собсна проблема? Ты уже все написал
|
|
|
|
|
|
#3
|
|
Неактивный пользователь
Регистрация: 07.11.2009
Сообщений: 6
Репутация: 0
|
проблема в том, что не работает
если бы работало, проблем бы никаких небыло |
|
|
|
|
|
#4
|
|
Неактивный пользователь
Регистрация: 07.11.2009
Сообщений: 6
Репутация: 0
|
поискал про классы в инете, переделал, но все равно не работает
Код:
class stroka{ public:
const int size = 20;
char str[size];
int main(void);
cin.getline(str,size);
ofstream ptk1("test18.txt");
cout<<"length of string is:"<<strlen(str)<<endl;
ptk1<<"length of string is:"<<strlen(str)<<endl; }
int stroka::main{void) {
if (strstr(stroka,"one"))
{
cout<<"one in the string"<<endl;
ptk1<<"one in the string"<<endl;
}
else
{
cout<<"ERROR!"<<endl;
ptk1<<"ERROR!"<<endl;
}
getch ();
}
|
|
|
|
|
|
#5
|
|
Выложы весь исходник, если смогу помогу
![]() |
|
|
|
|
|
|
#6
|
|
Неактивный пользователь
Регистрация: 07.11.2009
Сообщений: 6
Репутация: 0
|
|
|
|
|
|
|
#7
|
|
Код:
#include <vcl.h> и что вобше должна прога делать,я правилньо шпонел должен вписать в тексавой файл то что пишетьса в консоле? Последний раз редактировалось REn005; 08.11.2009 в 19:20.. |
|
|
|
|
|
|
#8
|
|
Неактивный пользователь
Регистрация: 07.11.2009
Сообщений: 6
Репутация: 0
|
Что такое vcl.h понятия не имею, просто препод говорит что когда в билдере делаешь, эти 2 строки обязательно нада -
#include <vcl.h> #pragma hdrstop ![]() Задание к проги вот - Дана строка не более 20 английских символов. Определить длину строки. Проверить, есть ли в ней слово “one”. У меня есть рабочий код, но без использовании класса, а в лабе надо сделать с классом и объектами. Вот рабочий без класса Код:
#include <vcl.h>
#pragma hdrstop
#include <iostream.h>
#include <conio.h>
#include <cstring.h>
#include <fstream.h>
void main ( )
{
const int size = 20;
char str[size];
cin.getline(str,size);
ofstream ptk1("test18.txt");
cout<<"length of string is:"<<strlen(str)<<endl;
ptk1<<"length of string is:"<<strlen(str)<<endl;
if (strstr(str,"one"))
{
cout<<"one in the string"<<endl;
ptk1<<"one in the string"<<endl;
}
else
{
cout<<"ERROR!"<<endl;
ptk1<<"ERROR!"<<endl;
}
getch ();
}
Последний раз редактировалось satyph; 08.11.2009 в 20:08.. |
|
|
|
|
|
#9
|
|
Постоялец
![]() ![]() ![]() ![]() ![]() Пол:
Регистрация: 05.02.2007
Адрес: Москва
Сообщений: 662
Репутация: 271
|
Я думаю, что от Вас требуется что-то типа:
Код:
class stroka
{
private: // защищенные данные класса
int size;
char *str;
public:
stroka(int n):size(n){str=new char[n];str[0]=0;}// конструктор строки не более n символов
stroka(char *s) // конструктор из char
{
size=0;while(s[size++]!=0);
str=new char[size+1];
for(i=0;i<=size;i++)str[i]=s[i];
}
~stroka(){delete[] str;} // деструктор
int strlen(){int i=0;while(str[i++]!=0);return i;} // функция вычисления длины строки
bool strstr(string s) // функция определения входит ли строка s в текущую строку
{
for(int i=0;i<zise-s.size;i++)
{
int ns=0;
for(int j=0;j<s.size;j++)
{
if(str[i+j]==s.str[j])ns++;
}
if(ns==s.size)return true;
}
return false;
}
friend &istream operator<<(stroka); // перегрузка потокового ввода для класса stroka
};
&istream operator<<(stroka s) // код функции потокового ввода
{
cout<<s.str;
return *this;
}
int main(void) // точка входа в программу
{
stroka s1(10); // создаем объект stroka
cout<<"enter string:";
cin>>s1; // вводим строку
ofstream ptk1("test18.txt");
cout<<"length of string is:"<<s1.strlen()<<endl; // выводим длину строки
ptk1<<"length of string is:"<<s1.strlen()<<endl;
stroka one("one"); // создаем строку для поиска
if (s1.strstr(one)) // ищем строку
{
cout<<"one in the string"<<endl;
ptk1<<"one in the string"<<endl;
}
else
{
cout<<"ERROR!"<<endl;
ptk1<<"ERROR!"<<endl;
}
getch ();
}
__________________
Сергей Сергеевич Последний раз редактировалось zss; 08.11.2009 в 22:47.. |
|
|
|
|
|
#10
|
|
Неактивный пользователь
Регистрация: 07.11.2009
Сообщений: 6
Репутация: 0
|
Спасибо, только почему все так сложно? Нельзя ли просто засунуть класс в мою программу, что на пост выше? А то боюсь не смогу защитить на лабе ваш вариант )
|
|
|
|
|
|
#11
|
|
Постоялец
![]() ![]() ![]() ![]() ![]() Пол:
Регистрация: 05.02.2007
Адрес: Москва
Сообщений: 662
Репутация: 271
|
Как раз сложностей тут по минимуму.
Похоже, Вы даже не ознакомились с тем, что такое класс.... Придется что-нибудь почитать. Например, на моей странице http://butovo.com/~zss/frame_rus.html См. "Описание языка С++" и далее "Введение в объектно ориентированное программирование"
__________________
Сергей Сергеевич |
|
|
|
![]() |
Похожие темы
|
||||
| Тема | Автор | Раздел | Ответов | Последнее сообщение |
| что это за программа Бу-туз? | LexRider | Архив | 6 | 18.04.2009 06:30 |
| Программа для 3d | Cjing | Архив | 3 | 12.01.2009 21:23 |
| Программа для DVD | anga | Архив | 3 | 02.11.2008 18:11 |
| программа для ИБП | realshah | Обсуждение программ | 3 | 09.10.2008 10:26 |
| Программа для.... | Witaly | Архив | 3 | 04.01.2007 12:08 |
|
|