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

Выборка из массива - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.82
Sasuke-sama
0 / 0 / 0
Регистрация: 22.05.2009
Сообщений: 33
30.05.2009, 14:31     Выборка из массива #1
У меня есть программка, которая выполняет,при длине L четной, то удаляются 2 первых и 2 последних символа;
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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
#include<iostream.h>
#include<string.h>
#include<stdlib.h>
#include<stdio.h>
#include<conio.h>
#define SIZE 255
class x
{
    char *str;
    char *str_return;
    public:
          x();
          x(char*);
          ~x();
          char* run();
          void set(char*);
          friend void print(x&);
          friend ostream& operator<<(ostream&,x&);
          friend istream& operator>>(istream&,x&);
          friend char* run(x&);
};
x::x()
{
    str=new char[SIZE];
    str[0]='\0';
    str_return=new char[SIZE];
    str_return[0]='\0';
};
x::x(char *s)
{
    str=new char [SIZE];
    strcpy(str,s);
    str_return=new char [SIZE];
    str_return[0]='\0';
}
x::~x()
{
    delete[] str;
    cout<<"destructor has been called\n";
}
void x::set(char* s)
{
    unsigned int i;
    for(i=0;i<strlen(s);i++)
    str[i]=s[i];
    str[i]='\0';
}
char* x::run()
{
    int i=0;
    if ((strlen(str)%2==0)&(strlen(str)>=4))
    {
        for(i=0;i<strlen(str)-4;i++)
        str_return[i]=str[i+2];
        str_return[i]='\0';
    } else strcpy(str_return,str);
    return str_return;
}
char* run(x &obj)
{
    return obj.run();
}
void print(x &obj)
{
    cout<<obj.str<<" "<<obj.str_return<<"\n";
}
ostream& operator<<(ostream &stream,x &ob)
{
    stream<<ob.str;
    return stream;
}
istream &operator>>(istream &stream,x &ob)
{
    stream>>ob.str;
    return stream;
}
void main()
{
    char s[256];
    clrscr();
    cout<<"Vvedite stroku: ";
    cin.getline(s,256);
    x str(s);
    cout<<"Vvedennaya stroka:\n";
    print(str);
    cout<<"Preobrazovannaya stroka:\n";
    cout<<run(str)<<"\n\n";
    cout<<"Vvedite stroku: ";
    cin.getline(s,256);
    x *pstr;
    pstr=new x();
    pstr->set(s);
    cout<<"Vvedennaya stroka: ";
    print(*pstr);
    cout<<"Preobrazovannaya stroka: ";
    cout<<run(*pstr)<<"\n";
    delete pstr;
    getch();
}
А мне надо сделать так, что если длинна L>6-ти, то выводится какая либо строка! Как это сделать???
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.05.2009, 14:31     Выборка из массива
Посмотрите здесь:

C++ Выборка по условию из одномерного массива в другой
C++ Квадратичная выборка
квадратичная выборка C++
выборка данных из БД C++
Выборка нечётных чисел C++
Рандомная выборка C++
C++ Выборка 2 чисел из n
C++ <regex> выборка из массива
Выборка из динамического массива C++
C++ Выборка и копирование элементов массива в новый массив с условием
Выборка элементов массива и их запись в переменную C++
C++ Выборка из массива

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Monte-Cristo
 Аватар для Monte-Cristo
2807 / 1372 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
30.05.2009, 14:42     Выборка из массива #2
C++
1
2
3
4
5
6
7
8
#include <iostream>
 
int main()
{
   char str[] = "Some string...";
   if (strlen(str) > 6) std::cout << "Bugaga... ";
   return 0;
}
Sasuke-sama
0 / 0 / 0
Регистрация: 22.05.2009
Сообщений: 33
30.05.2009, 14:59  [ТС]     Выборка из массива #3
Ввести с клавиатуры строку символов S1. Признак окончания ввода строки - нажатие клавиши "Ввод". Программа должна содержать перегруженную операцию «=», использование которой скопирует S1 в S2 . Исходную и преобразованную строки вывести в файл, если Длина L >6-и, то выделяется подстрока { } скобках;

Добавлено через 13 минут 5 секунд
L - длинна введённой строки!
Yandex
Объявления
30.05.2009, 14:59     Выборка из массива
Ответ Создать тему
Опции темы

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