Форум программистов, компьютерный форум, киберфорум
Наши страницы

Оператор if и указатель на цикл (ввод цифр и преобразование в буквы) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Чтение и ввод в какоенибудь консольное приложение http://www.cyberforum.ru/cpp-beginners/thread782875.html
Вот допустим есть какая нибудь программа назавем её программа а, и моя программа - программа б. Программа б вводит в программу а значения, "нажимает ентер" и читает результат выданой программой а....
C++ Реализоваить систему отдела кадров предприятия Система отдела кадров предприятия содержит следующие сведения о работниках: -фамилия и инициалы работника; -название занимаемой должности; -год поступления на работу. Написать программу, которая... http://www.cyberforum.ru/cpp-beginners/thread782861.html
Условие цикла if, неправильная работа if C++
cin.getline(str1,N); //getline-запись данных в строку str1,размерность N; cout<<"Enter second string -> "<<endl; cin.getline(str2,N); cout<<"enter m-> "<<endl; ...
Проверки различных условий C++
char str1,str2,str3; // объявление массивов; unsigned int m; //объявление перменной ,после которой будет вставлена подстрока; cout<<"Enter first string -> "<<endl; //поток...
C++ Странное поведение кода http://www.cyberforum.ru/cpp-beginners/thread782850.html
int x; cout << (x = 1) + (x = 2) + (x = 3); У меня выводит 7 (вместо 6). Почему?!?!
C++ динамический массив Доброго всем времени суток.Помогите чайнику разобраться.Разбираюсь с массивами и столкнулся с не понятным,вот мой код: #include <iostream> #include <iomanip> #include <cmath> using namespace... подробнее

Показать сообщение отдельно
Rivory
146 / 112 / 2
Регистрация: 15.01.2013
Сообщений: 266
10.02.2013, 04:38
Вот эта каша-мала не несет никакой логической нагрузки.
C++
1
2
3
4
5
6
7
8
9
10
    for(k=0;k<curr;k++)
        for ( int i = 0; i < n; ++i )
            for ( int j = 0; j < m; ++j )
                if(arr[k][0][0]=='a' && arr[k][0][1]=='c')
                    if(arr[k][i][j]=='a')
                    {arr[k][i][j+1]=='b'||'c';j++;
                    }
                        
 
               cout <<(char)arr[k][i][j] << ( j < m - 1 ? "" : "\n" );
Особенно вот эта часть
C++
1
arr[k][i][j+1]=='b'||'c';
Внутри if'a(не в условии, а в самом ифе)
Реализовать можно как-то так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
    //Счетчик "c"
    int c_counter = 0;
    //Переменная, разрешающая печать строки
    bool legit = true;
    for(k=0;k<curr;k++)
    {
        for ( int i = 0; i < n; ++i )
        {
            for ( int j = 1; j < m; ++j )
            {
                if(arr[k][i][0]=='a' && arr[k][i][1]=='c')
                {
                    //cout << (char)arr[k][i][j] << ( j < m - 1 ? "" : "\n" );
                    if(arr[k][i][j] == 'a')         legit = false; //Если есть ещё 1 символ a
                    else if(arr[k][i][j] == 'c')    c_counter++;
                    if(c_counter > 2)               legit = false; //Если болье 2х c
                }
                else legit = false; //Если начинается не на ac
            }
            if(legit) for(int j=0; j<m; ++j) cout << (char)arr[k][i][j] << ( j < m - 1 ? "" : "\n" );
            else cout << "String is not legit" << endl;
        }
    }
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru