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

Помагите написать функции для следующей программы - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Подсчитать количество символов в первом слове F2 http://www.cyberforum.ru/cpp-beginners/thread140967.html
Подсчитать количество символов в первом слове F2
C++ Скопировать из файла F1 в файл F2 все строки в которых есть одинаковые слова Скопировать из файла F1 в файл F2 все строки в которых есть одинаковые слова http://www.cyberforum.ru/cpp-beginners/thread140966.html
Скопировать из файла F1 в файл F2 строки, кроме тех, что начинаются на букву «А» C++
Скопировать из файла F1 в файл F2 строки, кроме тех, что начинаются на букву «А» Помогите с решением, в долгу не останусь =))
Из нескольких TextBox-ов вставить тексты в ListView C++/CLI WinForms
Ребят такая проблема в формах пишу прогу..необходимо из 7 текстбоксов вставить тексты в листвью. подскажите как можно это реализовать? пробовал такой вариант не получается..: void ShowTabl() { //очистка блока ListView listView1->Items->Clear(); // заполнение таблицы for(RealEstate* i = REBegin(rtt); i!=REEnd(rtt); i++) {
C++ функции && строки http://www.cyberforum.ru/cpp-beginners/thread140947.html
ребята,пожалуйста,помогите.В понедельник практику сдавать,а эти задачи НЕМОГУ. 1. Написать процедуру для суммирования матриц. С ее помощью сложить исходную матрицу и транспонированную (т.е полученную поворотом исходной на 900) 2. Найти во введённом тексте самое длинное симметричное слово, т.е. слово, которое слева направо и справа налево читается одинаково. Считать, что слова в тексте...
C++ Подскажите как в С++ подключить драйвер для графыки Подскажите как в С++ подключить драйвер для графыки,,,,.. подробнее

Показать сообщение отдельно
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4237 / 2770 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
09.06.2010, 21:01     Помагите написать функции для следующей программы
Вообще-то странное условие, а если будут 3 одинаковых символа, что тогда?
Вот код, который меняет все одинаковые символы в строке на символ '.' (2 точки - это 2 символа, тогда всю строку сдвигать придется, я думаю имелось ввиду просто '.', хотя если что - переписать не сложно)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
using namespace std;
 int main()
{    char str[81],ch[257];
     for(int i=0;i<257;i++)
        ch[i]=-1;
     cout<<"Enter string : ";
     cin.getline(str,80);
     int len=strlen(str);
     for(int i=0;i<len;i++){
         if(str[i]==' ')continue;
         if(ch[str[i]]>=0){
         str[i]=str[ch[str[i]]]='.';}
         else
         ch[str[i]]=i;
     }    
     cout<<str<<endl;
        system ("pause");
        return 0;
}
Можно просто твой код упростить, чтоб там не было "пиков" и "гетов", попозже выложу. А по первому заданию - есть ф-ция strlen() ? Или нужно без нее обойтись?

Добавлено через 18 минут
Вот, делает вточности, что твой код :
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
using namespace std;
 int main()
{    char str[81];
     cin.getline(str,80);
     int len=strlen(str);
     for(int i=0;i<len;i++)
     if (str[i]==str[i+1]){
         ++i;
         cout<<"..";}
     else 
         cout<<str[i];
        system ("pause");
        return 0;
}
Добавлено через 22 минуты
1)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
using namespace std;
 int main()
{    char str[81];
     cout<<"Enter string : ";
     cin.getline(str,80);
     int len=0;
     for (int i=0;str[i]!='\0';i++)
     if(str[i]!=' ')len++;  // пробел не считаем за символ
     cout<<"String has "<<len<<" simbol"<<endl;   
        system ("pause");
        return 0;
}
Добавлено через 22 минуты
Держи готовый код:
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
#include <iostream>
using namespace std;
void lenstring();
void simbolpoint();
 int main()
{    cout<<"If you want call first function enter 1"<<endl\
     <<"If you want call second function enter 2"<<endl;
     int i;
     cin>>i;
     cin.ignore();
     switch (i){
         case 1 : lenstring();break;
         case 2 : simbolpoint();break;
         default : cout<<"Goodbye!!!"<<endl;}   
        system ("pause");
        return 0;
}
void lenstring(){
     char str[81];
     cout<<"Enter string : ";
     cin.getline(str,80);
     int len=0;
     for (int i=0;str[i]!='\0';i++)
     if(str[i]!=' ')len++;  // пробел не считаем за символ
     cout<<"String has "<<len<<" simbol"<<endl;
     }
void simbolpoint() {   // аналог твоего кода
     char str[81];
     cin.getline(str,80);
     int len=strlen(str);
     for(int i=0;i<len;i++)
     if (str[i]==str[i+1]){
         ++i;
         cout<<"..";}
     else 
         cout<<str[i];
     cout<<endl;    
     }
 
Текущее время: 18:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru