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

Подсчет количества символов разного вида на одинаковых позициях в разных строках - C++

Восстановить пароль Регистрация
 
Антоха0608
0 / 0 / 0
Регистрация: 21.03.2014
Сообщений: 3
21.03.2014, 19:24     Подсчет количества символов разного вида на одинаковых позициях в разных строках #1
Добрый день.
нужна помощь в написании программки.
Я только недавно начал изучать С++ и еще много чего не понимаю. Поэтому и прошу помощи.

ААБВАВББАА
АВВББАВАВА
ВААББАВАВА
АББВВАВВВВ
АБВВААВВАА

Вот к примеру у меня есть строки с символами, строк может быть хоть сколько.
Мне нужно чтобы программа считала КОЛИЧЕСТВО символов.
например
Первые символы во всех строках А=4
Б=0
В=1
вторые символы А=2
Б=2
В=1
и так далее
количество символов в строке всегда одинаково
а вот строк всегда разное количество
ПОМОГИТЕ кто понимает как это можно реализовать.
Заранее Спасибою
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.03.2014, 19:24     Подсчет количества символов разного вида на одинаковых позициях в разных строках
Посмотрите здесь:

C++ Подсчет количества символов в массиве (строка)
C++ Подсчет количества символов в каждом слове предложения с 7 слов
C++ Подсчет количества символов
Подсчет количества символов в файле C++
C++ Подсчет количества символов
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
recoder
 Аватар для recoder
129 / 129 / 28
Регистрация: 13.09.2013
Сообщений: 260
Записей в блоге: 2
21.03.2014, 19:44     Подсчет количества символов разного вида на одинаковых позициях в разных строках #2
Есть прекрасная книга.
Керниган Б., Ритчи Д / Язык программирования С.
Там, насколько я помню, есть отличные примеры таких заданий. Советую вам её почитать.
Антоха0608
0 / 0 / 0
Регистрация: 21.03.2014
Сообщений: 3
22.03.2014, 21:29  [ТС]     Подсчет количества символов разного вида на одинаковых позициях в разных строках #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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#include <iostream>
#include <conio.h>
#include "stdafx.h"
 
using namespace std;
using std::cout;
using std::cin;
 
 
 
char a ='A';
char b ='B';
char c ='C';
 
 int d = 0;
 int g = 0;
 int e = 0;
 
 int main()
 {
     UnknownType N; 
     
     const L =10;
    int[N][L];
 
     cout << 'Vvod';
 
      cin >> N ;
      
 
 
    int **p=new int *[N];
    for(int i(0); i<N; i++)
        p[i]=new int[L];
 
    for(int i(0); i<N; i++);
    {
        for (int j(0); j < 10 ;j++ );
        {
            switch
            case a : d++; break;
            case b : g++; break;
            case c : e++; break;
            default : cout<< 'Pykazon';
 
 
        
        cout << a; '='<< d;
        cout << b; '='<< g;
        cout << c;'='<< e;
        }
    }
    for(int i(0);i<N;i++ );
 
    delete []p[i];
 
    delete []p;
                  
 
    return 0;
}
Вот что получилось но не работает.
кто нибудь знает почему???
recoder
 Аватар для recoder
129 / 129 / 28
Регистрация: 13.09.2013
Сообщений: 260
Записей в блоге: 2
22.03.2014, 21:56     Подсчет количества символов разного вида на одинаковых позициях в разных строках #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
31
32
33
34
35
#include <iostream>
#include <conio.h>
 
using namespace std;
using std::cout;
using std::cin;
 
 
int main()
{
    const char a ='A';
    const char b ='B';
    const char c ='C';
 
    char ch;
    while (1) {
        int d = 0;
        int g = 0;
        int e = 0;
        while(cin.get(ch) && ch != '\n') {
            switch (ch){
                case a : d++; break;
                case b : g++; break;
                case c : e++; break;
            }
        }
        std::cout << "a = " << d << std::endl;
        std::cout << "b = " << g << std::endl;
        std::cout << "c = " << e << std::endl;
    }   
 
    std::cin.get();
    std::cin.get();
    return 0;
}
Выход сделайте только из цикла

Добавлено через 5 минут
К примеру так:
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 <iostream>
#include <conio.h>
 
using namespace std;
using std::cout;
using std::cin;
 
 
int main()
{
    const char a ='A';
    const char b ='B';
    const char c ='C';
    int p, z = 0;
    std::cout << "Count N: ";
    (std::cin >> p).get();
 
    char ch;
    while (z != p) {
        int d = 0;
        int g = 0;
        int e = 0;
        while(cin.get(ch) && ch != '\n') {
            switch (ch){
                case a : d++; break;
                case b : g++; break;
                case c : e++; break;
            }
        }
        std::cout << "a = " << d << std::endl;
        std::cout << "b = " << g << std::endl;
        std::cout << "c = " << e << std::endl;
        z++;
    }   
    std::cout << "Done!";
 
    std::cin.get();
    std::cin.get();
    return 0;
}
Антоха0608
0 / 0 / 0
Регистрация: 21.03.2014
Сообщений: 3
23.03.2014, 19:17  [ТС]     Подсчет количества символов разного вида на одинаковых позициях в разных строках #5
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
51
52
53
#include "stdafx.h" 
#include <iostream>
#include <conio.h>
 
using namespace std;
using std::cout;
using std::cin;
using std::endl;
 
int main()
{
 
    const char a ='A';
    const char b ='B';
    const char c ='C';
 
    
    
    int mas[5][10];  
 
    std::cout << "Vvod";
    std::cin >>"maccuB">>mas ;
 
 
   int d=0;
   int g=0;
   int e=0;
 
 
   for (int i=0;i<5;i++ )
   {
       for(int j=0;j<10;j++)
       
 
 
            switch (a,b,c)           
       {
                case a : d++; break;
                case b : g++; break;
                case c : e++; break;
            }
        }
        std::cout << "a = " << d << std::endl;
        std::cout << "b = " << g << std::endl;
        std::cout << "c = " << e << std::endl;
        
      
    std::cout << "Done!";
 
    std::cin.get();
    std::cin.get();
    return 0;
}
опять что то не так

Добавлено через 2 часа 28 минут
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
51
52
53
54
55
56
57
58
#include "stdafx.h" 
#include <iostream>
#include <conio.h>
#include <cctype>
 
using namespace std;
using std::cout;
using std::cin;
 
const char a = 'A';
const char b = 'B';
const char c = 'C';
 
int main()
{
    int d = 0;
    int e = 0;
    int f =0;
    char(ch);
 
    char mas [3][5];
    
    cout << "Vvod \n";
    
    for (int i(0); i<5; i++)
    {
        for (int j=0; j<3; j++)
        {
        
        }
    }
    system("cls");
      for (int i(0); i<5; i++)
      {
         for (int j=0; j<3; j++)
         {
            switch(ch)
            {
            case a : d++;break;
            case b : e++;break;
            case c : f++;break;
 
            } 
 
 
                 
 
 
 
         }
 
      }
 
     _getch();
   return 0;
 
 
}
что то не правильно????????????????
Yandex
Объявления
23.03.2014, 19:17     Подсчет количества символов разного вида на одинаковых позициях в разных строках
Ответ Создать тему
Опции темы

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