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

Поменять местами четные и нечетные символы слова - C++

Восстановить пароль Регистрация
 
weightless
0 / 0 / 0
Регистрация: 12.02.2013
Сообщений: 103
17.02.2013, 20:58     Поменять местами четные и нечетные символы слова #1
Как поменять местами четные и нечетные символы слова? Заранее спс!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.02.2013, 20:58     Поменять местами четные и нечетные символы слова
Посмотрите здесь:

Двумерный массив. Поменять четные и нечетные строки. C++
Создать двумерный массив и поменять в нем местами четные и нечетные элементы C++
Поменять местами четные и нечетные по порядку следования слова C++
Поменять местами четные и нечетные по порядку следования слова C++
Найти четные и нечетные элементы одномерного массива и поменять их местами C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Asdprom
 Аватар для Asdprom
22 / 21 / 1
Регистрация: 19.12.2011
Сообщений: 75
17.02.2013, 21:21     Поменять местами четные и нечетные символы слова #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
#include <iostream>
 
using namespace std;
int main()
{
    //setlocale ( LC_ALL, "rus" );
    char word [ 15 ];
    char result [ 15 ];
    int len = 0;
    int i;
    word [ 0 ] = '\0';
    result [ 0 ] = '\0';
 
    cin>>word;
    len = strlen ( word );
    word [ len ] = '\0';
 
    for ( i = 0; i < len; i++ )
    {
        result [ i ] = word [ i + 1 ];
        i ++;
        result [ i ] = word [ i - 1 ];
    }
    if ( ( len % 2 ) != 0 ) result [ len - 1 ] = word [ len - 1 ]; // если количество символов в слове не четно, то
                                            // последний символ добавляем в конец строки без перемены места
    result [ len ] = '\0';
    cout<<result<<endl;
    system ( "pause" );
    return 0;
}
Olivеr
 Аватар для Olivеr
411 / 407 / 13
Регистрация: 06.10.2011
Сообщений: 830
17.02.2013, 21:22     Поменять местами четные и нечетные символы слова #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <string>
using namespace std;
 
int main()
{
    string str;
    getline(cin,str);
    string::size_type str_len = str.size();
    string::size_type i = 0;
 
    while (i<str_len-1)
    {
        swap(str[i],str[i+1]);
        i+=2;
    }
    cout <<str<< endl;
    return 0;
}
HackSign
33 / 33 / 13
Регистрация: 23.11.2006
Сообщений: 109
17.02.2013, 21:37     Поменять местами четные и нечетные символы слова #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
#include <stdio.h>
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
 
int main() 
 { 
  char ch[10]; 
  char ch2[10]; 
  char r, s;
  int i,n,m;
  cout<<"Vvedite slovo: "; 
   
  cin>>ch; 
  cout<<"\n";  
  n=strlen(ch); 
  i=1;  
  while (i!=n)
  { 
   r=ch[i]; 
   s=ch[i+1]; 
   ch[i]=s;
   ch[i+1]=r; 
   i=i+2;
   } 
  cout<<"Itog: "<<ch<<"\n"; 
  getch(); 
  return 0;  
  }
weightless
0 / 0 / 0
Регистрация: 12.02.2013
Сообщений: 103
18.02.2013, 22:57  [ТС]     Поменять местами четные и нечетные символы слова #5
У меня есть задание:
В командной строке программе передаются два числа. Из файла с текстом своей программы выполнить чтение соответствующих строк, найти в них самое длинное слово и поменять местами четные и нечетные символы этого слова.

Как выполнить замену для переменных maxlen1, maxlen1 ?
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
#include <iostream.h>
#include<stdlib.h>
#pragma hdrstop
#include <math.h>
#include <tchar.h>
#include<stdio.h>
#include<conio.h>
#pragma argsused
using namespace std;
 
    
void consol (int *pa, int *pb, char* argv[]) {
    *pa = atof(argv[1]);
    *pb = atof(argv[2]);
    }
int main(int argc, char *argv[]) {
    system("chcp 1251");
    int a,b,*n2,*n1, curlen1 = 0, maxlen1 = 0, i1, t1, curlen2 = 0, maxlen2 = 0, i2, t2;
    consol(&a, &b, argv);
    char text1[80][40];
    char text2[80][40];
    FILE *fp=fopen("prg.txt","rb");
    printf("Введите номера двух строк\n",n1,n2);
    scanf("%d","%d",&n1,&n2);
    for(t1=0;t1<*n1;t1++){
      gets(text1[t1]);
      if (!text1[t1][0])break;
    }
    for(i1=0;i1<80;i1++) {
   
     if(text1[i1]==' '|| text1[i1]=='\0'){
         if(curlen1>maxlen1){
           maxlen1 = curlen1;
         }
         if(text1[i1]=='\0')break;
         curlen1 = 0;
      }
      else curlen1++;
      return 1;
   }
    for(t2=0;t2<*n2;t2++){
      gets(text2[t2]);
      if (!text2[t2][0])break;
    }
    for(i2=0;i2<80;i2++)
   {
     if(text2[i2]==' '|| text2[i2]=='\0'){
         if(curlen2>maxlen2){
           maxlen2 = curlen2;
         }
         if(text2[i2]=='\0')break;
         curlen2 = 0;
      }
      else curlen2++;
      return 1;
   }
 
    printf("\nСамое большое слово первой введенной строки",&maxlen1);
    printf("\nСамое большое слово первой введенной строки",&maxlen2);
    fclose(fp);
    delete text1;
    delete text2;
    getch ();
    return 0;
}
Добавлено через 5 часов 28 минут
так как перевести maxlen в чаровский массив?
Asdprom
 Аватар для Asdprom
22 / 21 / 1
Регистрация: 19.12.2011
Сообщений: 75
21.02.2013, 10:17     Поменять местами четные и нечетные символы слова #6
itoa () - преобразование int в char []
Croessmah
21.02.2013, 12:22
  #7

Не по теме:

Цитата Сообщение от Asdprom Посмотреть сообщение
itoa () - преобразование int в char []
не стандартная функция, так что может отсутствовать.

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.02.2013, 12:53     Поменять местами четные и нечетные символы слова
Еще ссылки по теме:

C++ Составить алгоритм меняющий местами четные и нечетные по порядку слова в тексте
Поменять местами символы и слова C++
Переставить местами четные и нечетные элементы в массиве C++

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

Или воспользуйтесь поиском по форуму:
gray_fox
What a waste!
 Аватар для gray_fox
1244 / 1127 / 53
Регистрация: 21.04.2012
Сообщений: 2,350
Завершенные тесты: 3
21.02.2013, 12:53     Поменять местами четные и нечетные символы слова #8
Цитата Сообщение от weightless Посмотреть сообщение
как перевести maxlen в чаровский массив?
sprintf (или лучше snprintf, если есть, что бы наверняка.
Yandex
Объявления
21.02.2013, 12:53     Поменять местами четные и нечетные символы слова
Ответ Создать тему
Опции темы

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