Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
2 / 2 / 0
Регистрация: 17.12.2014
Сообщений: 148
1

Переписать заданные пользователем слова, стоящие на нечетных местах, задом наперёд

10.01.2016, 01:55. Показов 620. Ответов 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
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
#include<iostream> 
#include<cstdlib> 
#include<ctime> 
#include<string> 
#include <locale> 
using namespace std; 
 
class qwer 
{ 
protected: 
char s[80]; 
char a[80]; 
public: 
 
void sozd() 
{ 
FILE *fp; 
fp=fopen("qwerty2.txt", "w"); 
if (fp==NULL) 
{ 
printf(" file not found"); 
 
} 
fputs(s,fp); 
fclose (fp); 
} 
 
void printqwer() 
{ 
FILE *fp; 
fp=fopen("qwerty.txt", "r"); 
if (fp==NULL) 
{ 
printf(" file not found"); 
} 
fgets(s,80,fp); 
fclose (fp); 
} 
 
void peremesh() 
{ 
int n=0; 
int m=0; 
int z=0; 
int j=0; 
int p=0; 
char k=' '; 
for (j=0;j<80;j++) 
if ((s[j]==k)||(s[j]==0)) 
{ 
n=m; 
m=j; 
z++; 
if ((z%2)==0) 
{ 
p=0; 
int u=n+1; 
int t=j-1; 
do 
{ 
char b=s[t]; 
char c=s[u]; 
s[t]=c; 
s[u]=b; 
u++; 
p++; 
t--; 
} 
while(p<=((m-n-1)/2)); 
} 
} 
} 
 
void vivod() 
{ 
printf("%s\n",s); 
} 
}; 
class qwer1:public qwer 
{ 
public: 
void lest() 
{ 
printf("vvedite strocu \n"); 
cin.getline(s,80); 
printf("\n"); 
} 
void ot() 
{ 
printf("vvedite nomer slova\n"); 
int e; 
scanf("%d",&e); 
int n=0; 
int m=0; 
int z=0; 
int j=0; 
int p=0; 
char k=' '; 
for (j=0;j<80;j++) 
if ((s[j]==k)||(s[j]==0)) 
{ 
n=m; 
m=j; 
z++; 
if (z==e) 
{ 
printf(" vvedite slovo dla izmenenia\n"); 
cin.getline(a,80); 
printf("\n"); 
int t=80-m; 
int v=0; 
while ((a[v] !=k)) 
{ 
++v; 
} 
for (int r = 0; r <t; r++) 
{ 
a[v+r]=s[m+r]; 
} 
t=80-n; 
for (int r = 0; r <t; r++) 
{ 
s[n+r]=a[r]; 
} 
 
} 
} 
} 
void obnul() 
{ 
int j=0; 
for (j=0;j<80;j++) 
{ 
s[j]=s[j]&0xFE; 
} 
} 
void izmen() 
{ 
int n=0; 
int m=0; 
int z=0; 
int j=0; 
int p=0; 
char k=' '; 
for (j=0;j<80;j++) 
if ((s[j]==k)||(s[j]==0)) 
{ 
n=m; 
m=j; 
z++; 
if ((z%2)==1) 
{int u; 
int t=j; 
if(n==0) 
u=n; 
else 
u=n+1; 
for (int i=0;i<t-u;i++) 
{ 
if ((s[i+u] >= 'a') && (s[i+u] <= 'z')) 
s[i+u]=s[i+u]-32; 
else 
s[i+u]=s[i+u]+32; 
} 
} 
 
} 
} 
void vivod() 
{ 
printf("%s\n",s); 
} 
}; 
 
int main() 
{ 
qwer1 f1; 
f1.lest(); 
f1.ot(); 
f1.vivod(); 
printf("\n"); 
printf("obnulenie mlad bit\n"); 
f1.obnul(); 
f1.vivod(); 
printf("\n"); 
printf("izmen\n"); 
f1.izmen(); 
f1.vivod(); 
system("pause"); 
return 0; 
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.01.2016, 01:55
Ответы с готовыми решениями:

В тексте слова, стоящие на четных местах, переписать задом наперед. В тексте несколько строк.
Задание: освоить обработку строк и работу с файлами средствами языка Си. Исходный текст должен...

На печать вывести слова, стоящие на нечетных местах и имеющие длину больше длины предпоследнего слова
Доброго времени суток, уважаемые форумчане. Мне нужна программа выполняющая следующие условия: ...

Вводится строка. Вывести слова стоящие на нечетных местах и имеющие длину больше длины предпоследнего слова.
#include&lt;fstream.h&gt; #include&lt;iostream.h&gt; #include&lt;conio.h&gt; #include&lt;string.h&gt; #include&lt;stdio.h&gt;...

Продублировать все слова стоящие на нечетных местах
Дан символьный массив, образованный из слов, разделенных пробелами С использованием процедур и...

1
504 / 316 / 236
Регистрация: 18.02.2013
Сообщений: 754
10.01.2016, 16:54 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
#include <cstdio>
#include <iostream>
#include <cstring>
using namespace std;
int main()
{
    char str[255]="mama mila ramu ",word[80]="okno milom",new_string[255];
    //cout<< "Enter string : ";
    //gets(str);
    puts(str);
    strcat(str," ");
    int n=strlen(str);
    int count_of_words=0,len_word=0,j=3;
   // cout<< "Enter number of word : ";
    //cin>>j;
    bool f=false;
    for (int i=0;i<n;i++)
    {
        if(str[i]!=' ')
            {
                len_word++;
            }
            else
                if (len_word>0)
                {
                    count_of_words++;
                    if (count_of_words==j)
                    {
                        f=true;
                        //cout<<"Enter word to change : ";
                       // gets(word);
 
                        strncpy(new_string,str,i-len_word);
                        strcat(new_string,word);
                        strncat(new_string,str+i,n-i);
                        puts(new_string);
                    }
            len_word=0;
 
            }
    }
    if (!f) cout<<"Ne bilo stolko slov "<<endl;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.01.2016, 16:54

Продублировать все слова стоящие на нечетных местах
Дан символьный массив, образованный из слов, разделенных пробелами. С использованием процедур и...

Выяснить, все ли буквы слова Х, стоящие на нечетных местах, различны
Задание 2 Выяснить, все ли буквы слова Х, стоящие на нечетных местах, различны.

Сортировка массива: отдельно элементы, стоящие на четных местах и элементы, стоящие на нечетных местах
здравствуйте! задание: В одномерном массиве, состоящем из п целых элементов. Упорядочить по...

Упорядочить по возрастанию отдельно элементы, стоящие на четных местах, и элементы, стоящие на нечетных местах
В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) сумму элементов...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru