,   CyberForum.ru

- C++

 
matador333
0 / 0 / 0
: 21.09.2012
: 11
08.12.2012, 21:31     #1
.
.

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
Similar
41792 / 34177 / 6122
: 12.04.2006
: 57,940
08.12.2012, 21:31    
:

C++
C++ random()
C++
C++
C++
C++
C++
C++



:
.

: 05:31. GMT +3.
- , ,
-
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
@Mail.ru