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

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

Войти
Регистрация
Восстановить пароль
 
Masterbet
0 / 0 / 0
Регистрация: 06.11.2010
Сообщений: 10
#1

Неповторяющиеся символы - C++

31.03.2011, 16:19. Просмотров 460. Ответов 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
30
#include <stdio.h>
#include <string.h>
#include <iostream>
using namespace std;
 
int main()
{ char str[50];
printf("Vedite stroku: ");
scanf("%s", str);
int i=0;
int j=0;
int p=strlen(str);
for (i=0;i<p;i++){
    int k=0;
    for (j=0;j<p;j++){
        if (str[i]==str[j]){k++;
            continue;
        }
    }
  
if (k==1){
    cout<<str[i]<<" ";
}
}
 
int k;
scanf("%d", &k);
 
return 0;
}

но теперь у меня задача сделать тоже самое, только через новую строку...ну то есть я объявляю новый массив str2[50]; и в отличии от верхней программы я єти не повторяющиеся буквы должен вывести другой строкой str2 yj yt hf,jnftn gjvjubnt djn kbcnbyu
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
#include <stdio.h>
#include <string.h>
#include <iostream>
using namespace std;
 
int main()
{ char str[50],str2[50];
printf("Vedite stroku: ");
scanf("%s", str);
int i=0;
int j=0;
int p=strlen(str);
for (i=0;i<p;i++){
    int k=0;
    for (j=0;j<p;j++){
        if (str[i]==str[j]){k++;
            continue;
        }
    }
    {
if (k==1){
     str2[i]=str[i];
}
}
 
}
 
cout<<str2<<"\n";
 
int k;
scanf("%d", &k);
 
return 0;
}
Добавлено через 1 минуту
то что англ написано.... ----но она не работает , вот мой листинг программы

 Комментарий модератора 
Используйте теги форматирования кода.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.03.2011, 16:19     Неповторяющиеся символы
Посмотрите здесь:

C++ Вывести на экран в первой строке нечетные символы, во второй четные символы исходной строки
C++ Удалить из слова неповторяющиеся буквы
C++ Нужно перевести небольшую программу, написанную на C++, на С (неповторяющиеся символы в строке)
Вычеркните из слова неповторяющиеся буквы. C++
C++ Ввести одномерный статический массив из n чисел и вывести все неповторяющиеся элементы.
C++ Даны два слова. Напечатать неповторяющиеся буквы
C++ Файлы. Вывести в другой файл все неповторяющиеся числа исходного файла
Дана строка, содержащая два слова, разделённых пробелом, вывести неповторяющиеся буквы слов. C++
C++ Вывести все неповторяющиеся элементы массива
C++ Выписать неповторяющиеся элементы матрицы в массив
C++ Записать неповторяющиеся элементы в новый контейнер
C++ Сгенерировать неповторяющиеся числа

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
LaГushan
124 / 124 / 14
Регистрация: 12.03.2011
Сообщений: 227
31.03.2011, 16:38     Неповторяющиеся символы #2
Объявите первый элемент второго массива
C++
1
char str2[50] = {0};
Поставьте счётчик заполнения
C++
1
int w =0;
Ну и заполняйте

C++
1
2
str2[w] = str[i];
w+=1;
А то у вас не по порядку массив заполнялся. И определитесь уже на C или C++ пишите программу.
Masterbet
0 / 0 / 0
Регистрация: 06.11.2010
Сообщений: 10
31.03.2011, 17:32  [ТС]     Неповторяющиеся символы #3
вот что получилось, только оно всё равно не работает выводит только одну букву а надо все которые не повторяются...

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
#include <stdio.h>
#include <string.h>
#include <iostream>
using namespace std;
 
int main()
{ char str[50];
    char str2[50] = {0};
 
printf("Vedite stroku: ");
scanf("%s", str);
int i=0;
int j=0;
int p=strlen(str);
for (i=0;i<p;i++){
    int k=0;
    for (j=0;j<p;j++){
        if (str[i]==str[j]){k++;
            continue;
        }
    }
    int w =0;
 
    {
if (k==1){
     str2[w]=str[i];
     w+=1;
 
}
}
 
}
 
cout<<str2<<"\n";
 
int k;
scanf("%d", &k);
 
return 0;
}
LaГushan
124 / 124 / 14
Регистрация: 12.03.2011
Сообщений: 227
31.03.2011, 17:40     Неповторяющиеся символы #4
Вы
Цитата Сообщение от Masterbet Посмотреть сообщение
int w =0;
определяете в цикле, поэтому понятно почему у вас выводится только один символ. w надо определять в начале программы, перед циклами.
Masterbet
0 / 0 / 0
Регистрация: 06.11.2010
Сообщений: 10
31.03.2011, 17:49  [ТС]     Неповторяющиеся символы #5
оо всё ...понял...буду знать....спасиб)))) я просто новичок в с, и пока только делфи неплохо знаю, а с пока трудновато даётся....
Yandex
Объявления
31.03.2011, 17:49     Неповторяющиеся символы
Ответ Создать тему
Опции темы

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