The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Попарно поменять символы местами в стоке"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы WEB технологии (Public)
Изначальное сообщение [Проследить за развитием треда]

"Попарно поменять символы местами в стоке"  
Сообщение от Oleg email(??) on 04-Мрт-07, 15:29 
уважаемые гуру,
помогите решить задачку в subj.
На Преле это делалось так:
perl -e '$a = "1234567890"; $a =~ s/(.)(.)/$2$1/g; print "$a\n"'

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "Попарно поменять символы местами в стоке"  
Сообщение от exn on 04-Мрт-07, 16:46 
char numb[]="1234567890"
char *tmp;

tmp = bumb;

  for(;*tmp!='\0';*tmp++)
    fprintf(stdout,"%d%d",int (*tmp--);int  (*tmp++));

    
непроверял , но думаю что работать будет

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Попарно поменять символы местами в стоке"  
Сообщение от exn on 04-Мрт-07, 16:47 
>char numb[]="1234567890"
>char *tmp;
>
>tmp = bumb;
>
>  for(;*tmp!='\0';*tmp++)
>    fprintf(stdout,"%d%d",int (*tmp--);int  (*tmp++));
>
>
>
>
>непроверял , но думаю что работать будет


пфу блин,
fprintf(stdout,"%с%с", (*tmp--); (*tmp++));

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Попарно поменять символы местами в стоке"  
Сообщение от Oleg email(??) on 04-Мрт-07, 17:52 
Не, думаю, что это не пойдет.
Строка может состоять из любого набора цифр и букв. 1234567890 - это просто пример был.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Попарно поменять символы местами в стоке"  
Сообщение от exn on 04-Мрт-07, 18:54 
это был наглядный алгоритм, хоть любой набор букав из RFC rus-001(Букварь)

на
############
############
cat invrs.c:

#include <stdio.h>

void usage(char *pname)
{
fprintf(stdout,"Usage: %s string\nExample: %s 1234567890\n", pname, pname);
exit(1);
}

int main(int ac, char **av)
{
        char *params, *tmp;
        int i;

        if(ac<2)
                usage(av[0]);

        for (i=1; i<ac;i++)
        {
        tmp = '\0';
        tmp = params = strdup(av[i]);
        fprintf(stdout, "\n%s -> ", av[i]);
                while(*tmp!='\0')
                {
                        fprintf(stdout, "%c%c",*tmp, *tmp++);
                        *tmp++;
                }
        }

        fprintf(stdout, "\n\n");

return 0;

}


#############
#############
cat Makefile:

invrs:
        gcc -O2 -g invrs.c -o invrs


запускай так:
./invrs lOge alemr

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Попарно поменять символы местами в стоке"  
Сообщение от exn on 04-Мрт-07, 18:55 
Только тебе нужно каждую вторую ? или все инвертировать ? :))))
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "Попарно поменять символы местами в стоке"  
Сообщение от exn on 04-Мрт-07, 20:47 
сегодня можно неблагодарить
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "Попарно поменять символы местами в стоке"  
Сообщение от XAnder (ok) on 05-Мрт-07, 08:30 
>уважаемые гуру,
>помогите решить задачку в subj.
>На Преле это делалось так:
>perl -e '$a = "1234567890"; $a =~ s/(.)(.)/$2$1/g; print "$a\n"'

Perl'овые regexp'ы в PHP тоже работают. Правда, не так элегантно:

$a = "1234567890";
$a = preg_replace('/(.)(.)/', "\\2\\1", $a);
print "$a\n";

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "Попарно поменять символы местами в стоке"  
Сообщение от Oleg email(??) on 05-Мрт-07, 08:55 
Спасибо!
То, что нужно. Работает!


>Perl'овые regexp'ы в PHP тоже работают. Правда, не так элегантно:
>
>$a = "1234567890";
>$a = preg_replace('/(.)(.)/', "\\2\\1", $a);
>print "$a\n";


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру