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

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

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

не работает удалением динамического массива строк - C++

08.12.2012, 21:31. Просмотров 209. Ответов 0
Метки нет (Все метки)

Не знаю в чем проблема.
вроде бы правильно написано.

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
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
#include <iostream>
#include <fstream>
#include <stdio.h>
#include "conio.h"
#include <string.h>
using namespace std;
const char b[] = ",.   ";
 
int kol(char *a) //Г*Г*õîäèì êîëè÷åñòâî ïðîïèñГ*ûõ ñèìâîëîâ Гў ñòðîêå
{ 
   int c = 0;
   for(int i = 0; i < strlen(a); ++i) //ïîêГ* Г*ГҐ ГЄГ®Г*ГҐГ¶ ñëîâГ*
       if(a[i] >= 'A' && a[i] <= 'Z') //åñëè ñèìâîë áîëüøîé ГІГ® +1
           c++;//
 return c;
}
bool razdel(char c) { // ïðîâåðêó ñèìâîëГ* Г°Г*çäåëèòåëü Г®Г* èëè Г*ГҐГІ
    bool o = false;
    for(int i = 0; i <strlen(b) ; i++)//
       if(c == b[i]) 
            { 
               o = true;
               break;
            }
   return o;
}
bool charprop(char b) { //  ГґГіГ*êöèÿ ïðîâåðêè ñèìâîëГ* ÿâëÿåòñÿ ëè Г®Г* áîëüøèì
 return b >= 'A' && b <= 'Z';//åñëè ñèìâîë Г*ГҐ Г¬Г*ëåГ*ГјГЄГЁ ГІГ» âîçâðГ*Г№Г*ГҐГ¬ true 
}
int kolstr(char *d)//êîëè÷åñòâî ñëîâ â ñòðîêå)
{
    int c=0;
    for(int i=0;i<strlen(d);i++)//èäåì ïîêГ* Г*ГҐ ГЄГ®Г*ГҐГ¶ ñòðîêè
    {
        if(razdel(d[i])==true && razdel(d[i+1])==false)//åñëè ñèìâîë Г°Г*çäåëèòåëü Г* ñëåä. Г*ГҐГІ ГІГ® óâåëè÷èâГ*ГҐГ¬ Г± Г*Г* 1
        {
            c++;
        }
    }//ìû ïîñ÷èòГ*ëè ñêîëüêî ГўГ±ГҐГЈГ® Г°Г*çäåëèòåëåé ìåæäó ñëîâГ*ìè(êîëè÷åñòâî ãðóïï Г°Г*çäåëèòåëåé)
    c++;//Г±+1 ГІГ*ГЄ ГЄГ*ГЄ ñëîâ Г*Г* 1 ГўГ±ГҐГЈГ¤Г* áîëüøå Г·ГҐГ¬ Г°Г*çäåëèòåëåé ìåæäó Г*èìè
    return c;
 
}
 
void main()
{
    ifstream in;
    ofstream out;
    ofstream out_sort;
    in.open("input.txt");
    out.open("output.txt");
    out_sort.open("out_sort.txt");
    char e[100],*c,**x,s[50],z[50];
    int dd=0,r=0,j,i,k;
    while(!in.eof())
    {
        in.getline(e,100,'\n');
        k=kolstr(e);
        j=0;i=0;r=0;
        e[strlen(e)+1]='\0';
        x = new char*[kolstr(e)];
        for(int i=0;i<kolstr(e);i++)
            x[i]=new char[strlen(e)/2];
 
        strcat(e,"\0");
        c=strtok(e,b);
        while(c)
        {   
        strcpy(x[i],c);
        c=strtok(NULL,b);
        i++;
        }//
 
        dd=i;   
        
       for(int i=0+r;i<dd-1-r;i++)
       {
           if(kol(x[i])==kol(x[i+1]))
           {
               r++;
               s[0]='\0';
               z[0]='\0';
               strcpy(s,x[i]);
               strcpy(z,x[i+1]);
               for(int g=i;g>0;g--)
                  strcpy(x[g],x[g-1]);
               for(int g=i+1;g<dd-1;g++)
                   strcpy(x[g],x[g+1]);
               strcpy(x[0],s);
               strcpy(x[dd-1],z);
           }
       }
 
       for(int j=0;j<dd;j++)
           out<<x[j]<<" ";
            out<<endl;//
 
       for(int i=0;i<dd;i++)
       {
           for(int j=0;j<dd-1;j++)
           {
               if(strlen(x[j])>strlen(x[j+1]))
               {
                   char temp[100];
                   temp[0]='\0';
                   strcpy(temp,x[j]);
                   strcpy(x[j],x[j+1]);
                   strcpy(x[j+1],temp);
               }
           }
       }
 
            for(int j=0;j<dd;j++)
                out_sort<<x[j]<<" ";
                out_sort<<endl;
 
         for(int j=0;j<1;j++)
                delete []x[0];
    delete []x;
        
       } 
    }
input: ggwp
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.12.2012, 21:31
Здравствуйте! Я подобрал для вас темы с ответами на вопрос не работает удалением динамического массива строк (C++):

Ошибка при удалением двумерного динамического массива - C++
Задача состоит в том, чтобы загрузить массив из файла 17 0 0.40 10 0.3 20 0.12 30 0.45 40 0.122 50 0.44 60 0.66 70 0.85

СОртировка динамического массива строк - C++
#include &lt;conio.h&gt; #include &lt;stdio.h&gt; #include &lt;locale&gt; #include &lt;iostream&gt; #include &lt;string.h&gt; using namespace std; void...

Создание динамического массива строк - C++
Всем доброго утра/вечера/дня. Возникла такая проблема. Не могу создать динамический массив строк. Т.е. нужно при вводе с клавиатуры...

Удаление динамического массива строк - C++
Здравствуйте! У меня проблема с удалением массива строк.Создал класс с полем - char** str; резервирую память(делаю это в конструкторе) ...

Проверка класса динамического массива строк - C++
Проверьте пожалуйста код программы, написанный мной по следующему условию: Код: #include &quot;stdafx.h&quot; #include...

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

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.12.2012, 21:31
Привет! Вот еще темы с ответами:

Передача динамического массива строк в функцию - C++
что не так? программа проверяет правильность скобок для каждой строки #define _CRT_SECURE_NO_WARNINGS #include &lt;iostream&gt; ...

Передача динамического массива строк в функцию и работа с ним - C++
Доброго времени суток. Помогите, пожалуйста. Мне нужно в программе объявить динамический массив строк, затем в пользовательской функции его...

Не работает random() для динамического массива - C++
здравствуйте. имеется квадратная матрица, созданная в динамической памяти. нужно заполнить ее случайными числами в интервале (-5;5)....

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


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

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