+ Ответить в теме
Показано с 1 по 5 из 5

Тема: поменять слова местами C#

  1. #1
    dummy drumer91 is on a distinguished road
    Регистрация
    20.11.2009
    Возраст
    26
    Сообщений
    8
    Вес репутации
    0

    По умолчанию поменять слова местами C#

    здравствуйте, помогите пожалуйста написать программку или составить алгоритм, которая бы меняла два заданных слова в строке местами, при этом не использовать методы для работы над строками(кроме длины)...
    Вот я думаю так:
    1)сначала посчитать количество слов в строке и посчитать количество рядом стоящих пробелов во всей строке
    2)потом создать массив строк, куда занести полученные последовательности пробелов и слова
    3)ввести счётчик, который бы считал количество слов в массиве
    4)затем поменять заданные слова местами
    5)вывести на экран...
    но у меня возникли проблемы с пунктом 1)

  2. По умолчанию

    Хотите избавиться от рекламы? Зарегистрируйтесь
  3. #2
    senior developer Decoder is on a distinguished road Аватар для Decoder
    Регистрация
    19.02.2008
    Адрес
    Moscow
    Возраст
    34
    Сообщений
    256
    Вес репутации
    7

    По умолчанию Re: поменять слова местами C#

    Объясни, как именно указывать, какое слово с каким менять?
    Предположим, имеется строка: "Понедельник Вторник Среда Четверг Пятница".
    Я вижу как минимум три варианта:
    1. Поменять "Понедельник" и "Пятница".
    2. Поменять первое и последнее слово или первое и пятое.
    3. Указывать смещение от начала строки и длину слова, напимер: (0, 11) и (34, 7).
    Поумнеть несложно, куда труднее от дури избавиться.

  4. #3
    dummy drumer91 is on a distinguished road
    Регистрация
    20.11.2009
    Возраст
    26
    Сообщений
    8
    Вес репутации
    0

    По умолчанию Re: поменять слова местами C#

    виноват, что сразу не написал
    пользователь вводит номера слов, которые надо поменять

  5. #4
    senior developer Decoder is on a distinguished road Аватар для Decoder
    Регистрация
    19.02.2008
    Адрес
    Moscow
    Возраст
    34
    Сообщений
    256
    Вес репутации
    7

    По умолчанию Re: поменять слова местами C#

    По поводу первого пункта: тебе же WinMain любезно предоставил уже готовый алгоритм на C#.
    3)ввести счётчик, который бы считал количество слов в массиве
    Количество слов в массиве и количество слов в строке - это разве не одно и то же значение?
    Ну и наконец...
    4)затем поменять заданные слова местами
    Существует готовый алгоритм, который переставляет мествми слова в строке без дополнительного выделения промежуточной памяти под отдельные слова.
    Так что делать всё это нужно по-другому:
    1. Количество слов в строке необходимо разве что для проверки корректности указываемого порядкового номера слова.
    2. Тебе нужен метод, который будет определять местоположение заданного слова внутри строки (т.е. смещение от начала строки) и его длину.
    3. Дальше используется алгоритм перестановки слов внутри строки.

    Если будет что-то непонятно, пиши на decoder@hotbox.ru
    Поумнеть несложно, куда труднее от дури избавиться.

  6. #5
    dummy drumer91 is on a distinguished road
    Регистрация
    20.11.2009
    Возраст
    26
    Сообщений
    8
    Вес репутации
    0

    По умолчанию Re: поменять слова местами C#

    Цитата Сообщение от Decoder Посмотреть сообщение
    Количество слов в массиве и количество слов в строке - это разве не одно и то же значение?
    да, количество СЛОВ в строке= количеству СЛОВ в массиве, НО в массиве, кроме слов, находятся последовательности пробелов в соответствующих элементах массива
    --------------------------------------------------------------------------------
    Добавлено сообщение
    --------------------------------------------------------------------------------
    c 1) уже разобрался
    --------------------------------------------------------------------------------
    Добавлено сообщение
    --------------------------------------------------------------------------------
    всем спасибо
    Последний раз редактировалось drumer91; 28.11.2009 в 12:54. Причина: Добавлено новое сообщение

+ Ответить в теме

Похожие темы

  1. Как поменять местами строки в таблице?
    Требуется физически поменять местами две строки... Как это сделать и возможно ли это в mysql? Структура таблицы: --...
    от qwertyuiop в разделе SQL
  2. Поменять записи местами
    #include <stdio.h> #include <conio.h> #include <string.h> #define n putchar('\n'); main() { FILE *f; struct sportsman {
    от lekha в разделе задачи на C и C++
  3. Решение задачки с 6-ю лягушками, которых нужно поменять местами
    Есть известная задачка про лягушек, которых нужно поменяьт местами DEMO] Была сотавлен алгоритм решения этой задачи, основанный на рекурсии: ...
    от gorunov в разделе Алгоритмы
  4. Поменять местами слова
    Собственно, простейшая задача - нужно поменять порядок слов в текстовой строке, длина строки не ограничена. Как это можно сделать через цикл?
    от Dees в разделе Delphi и Pascal
  5. Поменять местами части строки
    Нужно поменяте местами две части в строке разделенные запятой asdf,qwer=qwer,asdf
    от namomelkor в разделе MS Office и VB(A).

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения