Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
necronth
0 / 0 / 0
Регистрация: 04.04.2014
Сообщений: 13
1

Сравнение переменных разных типов

09.07.2014, 22:36. Просмотров 1733. Ответов 4
Метки нет (Все метки)

Здравствуйте. Столкнулся с проблемой не совпадения типов данных. Есть переменная string str, которая, к примеру, имеет значение "1245". Необходимо в переменную string str2 записать все остальные цифры без нуля (то есть 36789). Сам код написал, но проблема в том, что при сравнении string и int (счетчик цикла) выводит всегда false. Как можно исправить/избежать это? Вот сам код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
for(int x = 0; x < 9; x++)
    for(int y = 0; y < 9; y++)
        if(number[x][y] != "x")
            trueNumber[x][y] = number[x][y];
        else
            for(int i = 1; i < 10; i++)
                for(int j = 0; j < int(newNumber[x][y].length()); j++)
                {
                    if(newNumber[x][y][j] == i)
                        continue;
                    else if(j - 1 == newNumber[x][y].length())
                        trueNumber[x][y] += i;
                }
number, newNumber и trueNumber - строки. Заранее извиняюсь, если неправильно назвал или описал какие-то вещи, так как я самоучка. Также буду благодарен, если вы напишете готовый код.
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.07.2014, 22:36
Ответы с готовыми решениями:

Функция swap перестановки значений двух переменных для данных разных типов. Используйте template
не могу решить ( честно говоря вообще не понимаю его ) ((((( Напишите функцию...

Сравнение разных типов *Char и Char
Друзья, выполняю задание по имитации консольной команды Windows. Встретился с...

Сравнение типов
есть функция: void equalSep(char* str) { // пытаюсь сравнить str и &quot;.&quot;...

Преобразование типов переменных
Осуществить преобразование типов переменных явным и неявным способом по...

Матрица из разных типов
хочу создать клас Matrix елементы обьектов которого могли бы быть разных типов....

4
deniska91
54 / 3 / 2
Регистрация: 17.05.2014
Сообщений: 72
09.07.2014, 23:15 2
Лучший ответ Сообщение было отмечено necronth как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <string>
#include <stdlib.h>
 
using namespace std;
 
int main()
{
    string s1 = "1457";
    string s2;
    char ch[2];
    for (int i = 1; i < 10; i++)
    {
        itoa(i, &ch, 10);
        if (s1.find_first_of(ch) == string::npos) s2 += ch;
    }
    cout << s2;
    return 0;
}
1
necronth
0 / 0 / 0
Регистрация: 04.04.2014
Сообщений: 13
09.07.2014, 23:54  [ТС] 3
Большое спасибо!
0
Tulosba
:)
Эксперт С++
4749 / 3243 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
10.07.2014, 00:06 4
deniska91, можно обойтись и без нестандартной itoa:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <string>
 
int main() {
    
    std::string src = "1245";
    
    for( int i=1; i<10; ++i )
    {
        const char ch = '0' + i;
        if( src.find(ch) == std::string::npos )
        {
            std::cout << ch; // Выводим сразу для демонстрации
        }
    }
    return 0;
}
0
deniska91
54 / 3 / 2
Регистрация: 17.05.2014
Сообщений: 72
10.07.2014, 00:10 5
Tulosba, согласен, не додумался
0
10.07.2014, 00:10
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.07.2014, 00:10

Указатели разных типов
Добрый день уважаемые форумчане !!! Хочу уточнить для себя следующую деталь....

Сложение разных типов
У меня из файла в переменную int считывется число.. Мне нужно занести в...

Хранение разных типов
Приветствую всех. Возник вот такой вопрос. У меня есть, например, 3 разных...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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