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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.73
SergioDnDz
24 / 24 / 2
Регистрация: 27.02.2010
Сообщений: 74
#1

Разработать функцию,которая перекрывает символы строки заданным количеством символов другой строки, начиная с заданной позиции - C++

02.06.2010, 22:53. Просмотров 1553. Ответов 4
Метки нет (Все метки)

Разработать функцию,которая перекрывает символы строки заданным количеством символов другой строки, начиная с заданной позиции.При реализации функции запрещается пользоваться функциями библиотек языка C.
Примечание
В большинстве заданий необходимо предусмотреть работу функции при некорректном задании ее параметров.
Помогите пожалуйста)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.06.2010, 22:53     Разработать функцию,которая перекрывает символы строки заданным количеством символов другой строки, начиная с заданной позиции
Посмотрите здесь:

Функция перезаписывает символы строки заданным количеством символов другой строки - C++
Программа работает. Но не совсем правильно. В конечной строке появляются непонятные символы, которых быть там не должно. В программе нельзя...

Вставка в строку другой строки, начиная с заданной позиции - C++
class String { protected: char*str;//Указатель на массив символов int size;//Длина строки int num;//Кол-во символов в строке ...

Удалить из строки заданное количество символов, начиная с заданной позиции - C++
8.6.1. Помогите, пожалуйста, решить задачи в С++. Написать программу удаления из строки заданного количества символов, начиная с...

Функция удаляет из строки заданное количество символов, начиная с заданной позиции - C++
Подскажите, что не так в программе.? Функция удаляет из строки заданное количество символов, начиная с заданной позиции. (При...

Написать программу, удаляющую из строки заданное пользователем количество символов, начиная с заданной позиции - C++
Доброго времени суток, уважаемые форумчане. Просьба помочь написать программу, которая удаляет из строки заданное пользователем количество...

Удалить из строки заданное количество символов, начиная с заданной позиции. Преобразовать строку таким образом - C++
Удалить из строки заданное количество символов, начиная с заданной позиции. Преобразовать строку таким образом, чтобы сначала в ней были...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
odip
Эксперт С++
7157 / 3297 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
03.06.2010, 13:18     Разработать функцию,которая перекрывает символы строки заданным количеством символов другой строки, начиная с заданной позиции #2
Для начала напиши прототип функции
SergioDnDz
24 / 24 / 2
Регистрация: 27.02.2010
Сообщений: 74
03.06.2010, 17:31  [ТС]     Разработать функцию,которая перекрывает символы строки заданным количеством символов другой строки, начиная с заданной позиции #3
Разработать функцию,которая перекрывает символы строки заданным количеством символов другой строки, начиная с заданной позиции.При реализации функции запрещается пользоваться функциями библиотек языка C.
Примечание
В большинстве заданий необходимо предусмотреть работу функции при некорректном задании ее параметров.
Помогите пожалуйста)

Добавлено через 21 час 51 минуту
По этому образцу :

Функция выделяет из заданной строки подстроку заданной длины, начиная с заданной позиции.
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
#include <stdio.h>
#include <string.h>
int substr(char *, char *, int, int);
/*** главная функция ***/
int main(void) {
  char s1[80],s2[80]; /* источник и результат */
  int n, l, r; /* позиция, длина, результат */
  for (;;) {   /* бесконечный цикл */
     printf("Введите строку >");
     /* ввод строки-источника */
     if (!strcmp(gets(s1),"***")) break;
     /* ввод остальных параметров */
     printf("Введиту pos len>");
     scanf("%d %d",&n,&l);
     /* обращение к функции substr() */
     r=substr(s1,s2,n,l);
     /* вывод результатЁв */ 
     printf("pos=%d, len=%d\n",n,l);
     printf("s1=>>%s<<\n",s1);
     printf("s2=>>%s<<\n",s2);
     printf("R=%d\n\n",r);
     gets(s1);
     }
}
/*** функция выделения подстроки ***/
/* параметры: 
     src - строка-источник
     dest - строка-результат
     pos - позиция, с которой выделяется подстрока
     len - длина подстроки
   функция возвращает: 
     0 - нормальное выполнение
     1 - подстрока имеет меньшую длину, чем задано
    -1 - ошибка в параметрах, результат пустой */
int substr(char *src, char *dest, int pos, int len) {
 int ret; /* значение, которое возвращается */
  /* выход на начальную позицию */
  for(; pos&&*src; pos--, src++);
  /* проверка параметров */
  if (pos||(len<0)) ret=-1;
  else {    /* параметры корректны */
    /* пересылка символов */
    for(;len&&*src; *dest++=*src++,len--);
    /* проверка длины результата */
    ret = len ? 1 : 0;
    }
  /* запись признака конца в результат */
  *dest=0;
  return ret;
}
][акер
#define книжный_червь Я
182 / 93 / 6
Регистрация: 30.01.2010
Сообщений: 780
03.06.2010, 19:17     Разработать функцию,которая перекрывает символы строки заданным количеством символов другой строки, начиная с заданной позиции #4
На здоровье! Вот программа с применением этой функции:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include "stdafx.h" // Если у тя не Visual Studio и не Visual C++, то это писать не надо.
#include <iostream>
#include <conio.h>
 
typedef char massiv[100];
 
void zamena(massiv&,massiv&,int);
 
int main()
{
    massiv a = "Hello, world!",b = "Moto";
    zamena(a,b,7);
    std::cout << "a = " << a << "; b = " << b;
    getch();
    return 0;
}
 
void zamena(massiv& text,massiv& zam,int i)
{
    for (int j = i; j - i < strlen(zam); j++)
        text[j] = zam[j - i];
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.06.2010, 19:40     Разработать функцию,которая перекрывает символы строки заданным количеством символов другой строки, начиная с заданной позиции
Еще ссылки по теме:

Установка L символов строки s в значение t, начиная с позиции n - C++
Установка L символов строки s в значение t, начиная с позиции n. Функция StrSet (s, n, L, t). Не использовать библиотеку &lt;string.h&gt; это...

Разработать программу, которая для заданной строки s выводит на экран последовательность символов, расположенн - C++
Разработать программу, которая для заданной строки s выводит на экран последовательность символов, расположенных после последнего двоеточия.

Из строки выделить подстроку длиной n символов, начиная с заданой позиции - C++
Извините за глупый вопрос. Нужно из сроки выделить подстроку, начиная с заданой позиции длиной n-символов. В Sql это substr...

Выделение из исходной строки символов заданной длины с указанного номера позиции - C++
помогите, а то я в ассемблере слаб. нужно написать через сегменты. tasm dseg segment public para 'data' str1 db &quot;123456&quot; l equ $-str1...

Копировать из файла заданное количество символов, начиная с заданной позиции - C++ - C++
Программа должна копировать символы с начала файла Dat.txt и к введенной с клавиатуры позиции1 (pos). Затем копировать с позиции2 (kil) до...

Как в строке удалить указанное количество символов, начиная с заданной позиции? - C++
Доброго времени суток! Подскажите, пожалуйста, как удалить с m по n символов, перезаписать строку и показать ее на экран. Нужна программа....


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

Или воспользуйтесь поиском по форуму:
SergioDnDz
24 / 24 / 2
Регистрация: 27.02.2010
Сообщений: 74
03.06.2010, 19:40  [ТС]     Разработать функцию,которая перекрывает символы строки заданным количеством символов другой строки, начиная с заданной позиции #5
спасибо)
Yandex
Объявления
03.06.2010, 19:40     Разработать функцию,которая перекрывает символы строки заданным количеством символов другой строки, начиная с заданной позиции
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru