Модераторы: bsa

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема преобразование массива char в массив int, Требуется помощь в написании программы 
:(
    Опции темы
Arahael
Дата 17.10.2010, 14:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 25.7.2010

Репутация: нет
Всего: -1



Здравствуйте. Решал я задачу по программированию, всё было отлично, но тут случилась беда) 
Вобщем задача состоит в том, что бы с массива типа char, в котором записаны 15 чисел через пробел, создать массив чисел, ну и найти среди них самое большое число.

Вот кусок кода:
Код

    S = strtok(ost_ch, " "); // char *S, ost_ch массив типа char, в котором хранятся эти числа
    while(S!=NULL) {mas[j]=S; S=strtok(NULL, " "); j++; }  // char *mas[100], j=0
    for(i=0;i<j;i++) x[i]=atof(mas[i]); // double x[100]
    for(i=0;i<j;i++) cout << x[i] << endl; /* тут я просто вывожу этот массив на экран, т.е. я не писал код для нахлждения наибольшего числа */

Вот, всё работает, но оно заносит в массив х только первые 10 чисел (а их 15), и я не понимаю почему....если не сложно объясните пожалуйста, скажите где моя ошибка, или просто приведите пример, каким образом можно легче реализовать выполнение этой задачи. Спасибо.
PM MAIL   Вверх
EgorTheBlade
Дата 17.10.2010, 14:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 141
Регистрация: 5.12.2009

Репутация: нет
Всего: -1



Почему нельзя сделать через if(isdigit())? Может x[i] мал. Посмотрите на какой итерации это происходит и чем предыдущая отличается от той в которой происходит проблема
PM MAIL Skype   Вверх
mes
Дата 17.10.2010, 14:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



на вид вроде правильно..
хотя вызывает сомнение инициализация ost_ch.

скопируйте код сюда : http://liveworkspace.org и дайте ссылку на тестовый пример. 


Это сообщение отредактировал(а) mes - 17.10.2010, 14:28


--------------------
PM MAIL WWW   Вверх
Arahael
Дата 17.10.2010, 14:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 25.7.2010

Репутация: нет
Всего: -1



и каким же образом через isdigit сделать?

И что такое итерация?
PM MAIL   Вверх
mes
Дата 17.10.2010, 14:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Arahael @  17.10.2010,  13:28 Найти цитируемый пост)
И что такое итерация? 

один шаг ( цикла или рекурсии )


--------------------
PM MAIL WWW   Вверх
Arahael
Дата 17.10.2010, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 25.7.2010

Репутация: нет
Всего: -1



PM MAIL   Вверх
mes
Дата 17.10.2010, 14:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Arahael @  17.10.2010,  13:34 Найти цитируемый пост)
Вот. 

ну а привести в подобающий вид, чтоб все компилилось разве не нужно ?!

Код

   char ost_ch[20];


это всего 20 символов, учитывая что цифры написаны через пробел, всего 10 одноциферных чисел..

Добавлено через 55 секунд
вобщем увеличьте размер массива..

Добавлено через 2 минуты и 11 секунд
ну а вобще пока нет опыта разделяйте задание на части..

возьмите тестовую строку и на ней отработайте свой код, и только после того как устраните все недочеты пытайтесь загружать строку из файла..

Добавлено через 3 минуты и 6 секунд
и не забывайте про тестовый вывод.. после каждого действия смотрите результат.. 

и не придется обращаться на форум из за мелочей smile



--------------------
PM MAIL WWW   Вверх
Arahael
Дата 17.10.2010, 14:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 25.7.2010

Репутация: нет
Всего: -1



Извиняюсь, там при подключении библиотеки string, я забыл дописать .h, поэтому оно и писало ошибку, но даже если там дописать .h и увеличить массив, всё равно ничего не получается

Добавлено через 43 секунды
с загрузкой из файла проблем не возникло)
PM MAIL   Вверх
EgorTheBlade
Дата 17.10.2010, 14:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 141
Регистрация: 5.12.2009

Репутация: нет
Всего: -1



Цитата(Arahael @  17.10.2010,  14:48 Найти цитируемый пост)
всё равно ничего не получается

Вы говорите что конкретно неполучается.Так будет проще решить возникшую трудность
PM MAIL Skype   Вверх
mes
Дата 17.10.2010, 14:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Arahael @  17.10.2010,  13:48 Найти цитируемый пост)
я забыл дописать .h, поэтому оно и писало ошибку

для C++ правильнее <cstring>



--------------------
PM MAIL WWW   Вверх
Arahael
Дата 17.10.2010, 14:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 25.7.2010

Репутация: нет
Всего: -1



Программа по прежнему преобразовывает только первые 10 символов числа
PM MAIL   Вверх
mes
Дата 17.10.2010, 14:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



у вас целые или вещественные числа ? если второе, то atof, a не atoi.. 



--------------------
PM MAIL WWW   Вверх
Arahael
Дата 17.10.2010, 14:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 25.7.2010

Репутация: нет
Всего: -1



Если писать <cstring> -- fatal error: сstring: No such file or directory
PM MAIL   Вверх
mes
Дата 17.10.2010, 14:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



ловите, привел часть вашей программы в читабельный вид 
http://liveworkspace.org/code/e8f261fa7870...4fea3c6bb3712c7

добавляйте теперь чтение с файла 



--------------------
PM MAIL WWW   Вверх
EgorTheBlade
Дата 17.10.2010, 14:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 141
Регистрация: 5.12.2009

Репутация: нет
Всего: -1



можно весь код? или он большой?
PM MAIL Skype   Вверх
Arahael
Дата 17.10.2010, 14:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 25.7.2010

Репутация: нет
Всего: -1



У меня целые числа. вот строка: "1 2 3 4 5 6 7 8 9 8 7 5 2 6 1"

Добавлено через 1 минуту и 42 секунды
Оооо, mes, спасибо огромное, можете теперь пожалуйста объяснить в чем была моя ошибка?
PM MAIL   Вверх
mes
Дата 17.10.2010, 14:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



хотя вместо этого кода
Код

    substr = strtok(strline, " ");
    while (substr!=NULL) 
    {
       valstr [val_count] = substr; 
       ++val_count; 

       substr = strtok(NULL, " ");   
    }

логичнее сделать так :
Код

    for ( char * substr = strtok(strline, " ");  
          substr!=NULL;
          substr = strtok(NULL, " ")
        )
    {
       valstr [val_count] = substr; 
       ++val_count;          
    }


Добавлено через 1 минуту и 18 секунд
P.S. еще лучше valstr [val_count++] = substr;  , но Вам, судя по коду, еще рано .. 

Добавлено через 3 минуты и 11 секунд
Цитата(Arahael @  17.10.2010,  13:57 Найти цитируемый пост)
Оооо, mes, спасибо огромное, можете теперь пожалуйста объяснить в чем была моя ошибка? 

я ее не искал.. smile просто исправлял все что не нравилось ))
сравнить коды и найти причину - оставим Вам для разминки 
smile


--------------------
PM MAIL WWW   Вверх
Arahael
Дата 17.10.2010, 15:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 25.7.2010

Репутация: нет
Всего: -1



Спасибо большое) если б у меня было 100 постов, я бы поднял вам репутацию, но, извините, не могу пока что)
PM MAIL   Вверх
mes
Дата 17.10.2010, 15:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Arahael @  17.10.2010,  13:55 Найти цитируемый пост)
Если писать <cstring> -- fatal error: сstring: No such file or directory 

значит компилятор у Вас старенький.. 


--------------------
PM MAIL WWW   Вверх
Arahael
Дата 17.10.2010, 15:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 25.7.2010

Репутация: нет
Всего: -1



Это я не про компилятор) в компиляторе всё ок) я про тот сайт, который вы мне кинули)
PM MAIL   Вверх
mes
Дата 17.10.2010, 15:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Arahael @  17.10.2010,  14:06 Найти цитируемый пост)
 я про тот сайт, который вы мне кинули) 

ммм.. в примере что я Вам подправил, стоит именно <cstring> и все работает  smile 


--------------------
PM MAIL WWW   Вверх
Arahael
Дата 17.10.2010, 15:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 25.7.2010

Репутация: нет
Всего: -1



да-да, я видел) это странно)
PM MAIL   Вверх
mes
Дата 17.10.2010, 15:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(mes @  17.10.2010,  14:05 Найти цитируемый пост)
сstring

у вас первая буква "c" русская, а не латинская smile

Добавлено через 25 секунд
внимательнее надо быть, с раскладкой smile



--------------------
PM MAIL WWW   Вверх
Arahael
Дата 17.10.2010, 15:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 25.7.2010

Репутация: нет
Всего: -1



ааа, я протупил, извините)
PM MAIL   Вверх
Crafty
Дата 17.10.2010, 18:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 319
Регистрация: 3.11.2008

Репутация: 12
Всего: 14



Цитата(Arahael @  17.10.2010,  16:04 Найти цитируемый пост)
Спасибо большое) если б у меня было 100 постов, я бы поднял вам репутацию, но, извините, не могу пока что)

Поставил плюс.

PM MAIL   Вверх
Dov
Дата 17.10.2010, 19:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


аСинизатор
***


Профиль
Группа: Завсегдатай
Сообщений: 1721
Регистрация: 10.5.2003
Где: Эрец-Исраэль

Репутация: 11
Всего: 88



Цитата(Arahael @  17.10.2010,  13:02 Найти цитируемый пост)
или просто приведите пример, каким образом можно легче реализовать выполнение этой задачи. 

Например, так:
Код

int main()
{
    const int size  = 15;
    int   mas[size];
    char  str[]     = "1 2 3 4 5 6 7 8 9 8 7 5 2 6 1";
    int   i         = 0;
    int   max       = INT_MIN;

    for(int j = 0; str[j] != '\0'; j++)
    {
        if(str[j] != ' ')
        {
            mas[i] = str[j] - '0';
            if(mas[i] > max)
                max = mas[i];
            i++;
        }
    }
    
    cout << "mas: ";
    for(i = 0; i < size; i++)
        cout << mas[i] << ' ';
    cout << "\nmax: " << max << endl;

    return 0;
}





--------------------
Тут вечности запах томительный,
И свежие фрукты дешевые, 
А климат у нас – изумительный, 
И только соседи – #уевые. 
                           Игорь Губерман.
PM   Вверх
mes
Дата 17.10.2010, 19:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Dov @  17.10.2010,  18:22 Найти цитируемый пост)

Например, так:

1. только надо уточнить, что данный код не для строки чисел, а для строки цифр, хотя судя по строке приведенной тс. должно подойти.. 

2. не хорошо лепить все в одном месте, а именно заполнение массива и поиск максимального элемента..
разбиение на два несвязанных цикла не будет пессимизацией, а логика станет чище.. 

3. если соблюсти пункт 2, тогда и не придется использовать INT_MIN.. 



--------------------
PM MAIL WWW   Вверх
Dov
Дата 17.10.2010, 19:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


аСинизатор
***


Профиль
Группа: Завсегдатай
Сообщений: 1721
Регистрация: 10.5.2003
Где: Эрец-Исраэль

Репутация: 11
Всего: 88



mes,  ну ты и зануда...  smile 
Код
int main()
{
    const int size  = 15;
    int   mas[size];
    char  str[]     = "1 2 3 4 5 6 7 8 9 8 7 5 2 6 1";
    int   i         = 0;
    int   max;

    for(int j = 0; str[j] != '\0'; j++)
        if(str[j] != ' ')
            mas[i++] = str[j] - '0';

    max = mas[0];
    for(i = 1; i < size; i++)
        if(mas[i] > max)
            max = mas[i];
    
    cout << "mas: ";
    for(i = 0; i < size; i++)
        cout << mas[i] << ' ';
    cout << "\nmax: " << max << endl;

    return 0;
}



--------------------
Тут вечности запах томительный,
И свежие фрукты дешевые, 
А климат у нас – изумительный, 
И только соседи – #уевые. 
                           Игорь Губерман.
PM   Вверх
mes
Дата 17.10.2010, 20:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Dov @  17.10.2010,  18:46 Найти цитируемый пост)
  ну ты и зануда...   

ну тогда, чтоб оправдать звание добавлю, что код привязан жестко к фиксированному кол-ву чисел.. и есть возможность записи за границы..
но это можно оставить тс. как дом задание, если ему подойдет..
smile



--------------------
PM MAIL WWW   Вверх
Dov
Дата 17.10.2010, 20:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


аСинизатор
***


Профиль
Группа: Завсегдатай
Сообщений: 1721
Регистрация: 10.5.2003
Где: Эрец-Исраэль

Репутация: 11
Всего: 88



Цитата(mes @  17.10.2010,  19:03 Найти цитируемый пост)
код привязан жестко к фиксированному кол-ву чисел..

это условие ТС, я здесь нипричём.  smile 
Цитата(Arahael @  17.10.2010,  13:57 Найти цитируемый пост)
У меня целые числа. вот строка: "1 2 3 4 5 6 7 8 9 8 7 5 2 6 1"


Цитата(mes @  17.10.2010,  19:03 Найти цитируемый пост)
но это можно оставить тс. как дом задание, если ему подойдет..

Вот это правильно.  smile 

Цитата(Arahael @  17.10.2010,  13:57 Найти цитируемый пост)
вот строка: "1 2 3 4 5 6 7 8 9 8 7 5 2 6 1"

Вот ещё примерчик для этой строки:
Код
int main()
{
    const int size  = 15;
    int   mas[size];
    char  str[]     = "1 2 3 4 5 6 7 8 9 8 7 5 2 6 1";
    int   max;

    for(int i = 0; sscanf(str + i * 2, "%d", &mas[i]) != EOF; i++);        

    max = mas[0];
    for(int i = 1; i < size; i++)
        if(mas[i] > max)
            max = mas[i];
    
    cout << "mas: ";
    for(int i = 0; i < size; i++)
        cout << mas[i] << ' ';
    cout << "\nmax: " << max << endl;

    return 0;
}




--------------------
Тут вечности запах томительный,
И свежие фрукты дешевые, 
А климат у нас – изумительный, 
И только соседи – #уевые. 
                           Игорь Губерман.
PM   Вверх
mes
Дата 17.10.2010, 20:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Dov @  17.10.2010,  19:15 Найти цитируемый пост)
Вот ещё примерчик для этой строки:

ну и если быть совсем извращенцем и дословно подойти к заданию :
Код

int main()
{    
    char  str[]     = "1 2 3 4 5 6 7 8 9 8 7 5 2 6 1";
    char * str_end = str +  15 * 2;

    char * max = str;     
    for(char * cur = str; cur < str_end; cur +=2)
       if(*cur > *max)
            max = cur;
    
    cout << "mas: ";
    for(char * cur = str; cur < str_end; cur +=2)
        cout << (int)(*cur-'0') << ' ';
        
    cout << "\nmax: " << *max << endl;
    return 0;
}



--------------------
PM MAIL WWW   Вверх
Dov
Дата 17.10.2010, 21:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


аСинизатор
***


Профиль
Группа: Завсегдатай
Сообщений: 1721
Регистрация: 10.5.2003
Где: Эрец-Исраэль

Репутация: 11
Всего: 88



Цитата(mes @  17.10.2010,  19:44 Найти цитируемый пост)
ну и если быть совсем извращенцем и дословно подойти к заданию :

mes smile  
  
Цитата(Arahael @  17.10.2010,  13:02 Найти цитируемый пост)
задача состоит в том, что бы с массива типа char, в котором записаны 15 чисел через пробел, создать массив чисел

 А где же массивчик?  smile 




--------------------
Тут вечности запах томительный,
И свежие фрукты дешевые, 
А климат у нас – изумительный, 
И только соседи – #уевые. 
                           Игорь Губерман.
PM   Вверх
mes
Дата 17.10.2010, 21:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



там же написано 
Цитата(mes @  17.10.2010,  19:44 Найти цитируемый пост)
если быть совсем извращенцем

а значит создавать ничего не нужно, так как строка изначально является массивом цифр при особом рассмотрении..
smile 




--------------------
PM MAIL WWW   Вверх
Dov
Дата 17.10.2010, 22:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


аСинизатор
***


Профиль
Группа: Завсегдатай
Сообщений: 1721
Регистрация: 10.5.2003
Где: Эрец-Исраэль

Репутация: 11
Всего: 88



Цитата(mes @  17.10.2010,  20:35 Найти цитируемый пост)
а значит создавать ничего не нужно, так как строка изначально является массивом цифр при особом рассмотрении..

В таком случае эта строка должна вывести: 10 
Цитата(mes @  17.10.2010,  19:44 Найти цитируемый пост)
 cout << "\nmax: " << *max + 1 << endl;

 в чём я очень сомневаюсь.     smile 




--------------------
Тут вечности запах томительный,
И свежие фрукты дешевые, 
А климат у нас – изумительный, 
И только соседи – #уевые. 
                           Игорь Губерман.
PM   Вверх
mes
Дата 17.10.2010, 22:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Dov @  17.10.2010,  21:08 Найти цитируемый пост)
В таком случае эта строка должна вывести: 10 


почему ?

http://liveworkspace.org/code/91ca7a879aa7...2087687fab4a75f

Добавлено через 4 минуты и 51 секунду
 а вот лишнее сравнение есть.. :( но от него легко избавиться smile



--------------------
PM MAIL WWW   Вверх
Dov
Дата 17.10.2010, 22:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


аСинизатор
***


Профиль
Группа: Завсегдатай
Сообщений: 1721
Регистрация: 10.5.2003
Где: Эрец-Исраэль

Репутация: 11
Всего: 88



потому что 
Цитата(Dov @  17.10.2010,  21:08 Найти цитируемый пост)
*max + 1




--------------------
Тут вечности запах томительный,
И свежие фрукты дешевые, 
А климат у нас – изумительный, 
И только соседи – #уевые. 
                           Игорь Губерман.
PM   Вверх
mes
Дата 17.10.2010, 23:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Dov @  17.10.2010,  21:30 Найти цитируемый пост)
потому что
Код

*max + 1
 

ну и зачем +1 ?! 


--------------------
PM MAIL WWW   Вверх
Dov
Дата 17.10.2010, 23:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


аСинизатор
***


Профиль
Группа: Завсегдатай
Сообщений: 1721
Регистрация: 10.5.2003
Где: Эрец-Исраэль

Репутация: 11
Всего: 88



Цитата(mes @  17.10.2010,  22:15 Найти цитируемый пост)
ну и зачем +1 ?! 


mes, твой код находит max, который равняется 9. Так?
Цитата(mes @  17.10.2010,  19:44 Найти цитируемый пост)
   cout << "\nmax: " << *max << endl;

 Если к нему (max`у) прибавить 1, то, если я не ошибаюсь, должно получиться 10. Так? 
Цитата(Dov @  17.10.2010,  21:08 Найти цитируемый пост)
 cout << "\nmax: " << *max + 1 << endl; 


Или не так? 
Если не так, то в коде ошибка...  smile 


Это сообщение отредактировал(а) Dov - 17.10.2010, 23:41


--------------------
Тут вечности запах томительный,
И свежие фрукты дешевые, 
А климат у нас – изумительный, 
И только соседи – #уевые. 
                           Игорь Губерман.
PM   Вверх
mes
Дата 17.10.2010, 23:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Dov @  17.10.2010,  22:39 Найти цитируемый пост)
Если к нему (max`у) прибавить 1

так все ж зачем прибавлять 1 ?!


--------------------
PM MAIL WWW   Вверх
Dov
Дата 17.10.2010, 23:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


аСинизатор
***


Профиль
Группа: Завсегдатай
Сообщений: 1721
Регистрация: 10.5.2003
Где: Эрец-Исраэль

Репутация: 11
Всего: 88



Цитата(mes @  17.10.2010,  22:42 Найти цитируемый пост)
так все ж зачем прибавлять 1 ?!

Что бы убедиться, что max, который ты находишь не равен 9. Иначе, в сумме с 1 должно выводить 10.



--------------------
Тут вечности запах томительный,
И свежие фрукты дешевые, 
А климат у нас – изумительный, 
И только соседи – #уевые. 
                           Игорь Губерман.
PM   Вверх
mes
Дата 17.10.2010, 23:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Dov @  17.10.2010,  22:45 Найти цитируемый пост)
то бы убедиться, что max, который ты находишь не равен 9. Иначе, в сумме с 1 должно выводить 10.

ааа понял о чем Вы )) 
ну так :
Цитата

так как строка изначально является массивом цифр 

а не массивом чисел smile

Добавлено через 4 минуты и 43 секунды
а то что у тс стоит  "чисел",а не "цифр", то это просто путаница понятий..
которая предполагается начиная (как минимум) отсюда  : 
Цитата(Dov @  17.10.2010,  18:22 Найти цитируемый пост)
 mas[i] = str[j] - '0';

smile



--------------------
PM MAIL WWW   Вверх
Dov
Дата 17.10.2010, 23:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


аСинизатор
***


Профиль
Группа: Завсегдатай
Сообщений: 1721
Регистрация: 10.5.2003
Где: Эрец-Исраэль

Репутация: 11
Всего: 88



Цитата(mes @  17.10.2010,  22:49 Найти цитируемый пост)
а не массивом чисел

А это здесь причём?



--------------------
Тут вечности запах томительный,
И свежие фрукты дешевые, 
А климат у нас – изумительный, 
И только соседи – #уевые. 
                           Игорь Губерман.
PM   Вверх
mes
Дата 17.10.2010, 23:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Dov @  17.10.2010,  22:54 Найти цитируемый пост)
А это здесь причём?

при том что цифра не может быть "10"
smile

Добавлено через 1 минуту и 5 секунд
вот развели то оффтопика )



--------------------
PM MAIL WWW   Вверх
Dov
Дата 17.10.2010, 23:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


аСинизатор
***


Профиль
Группа: Завсегдатай
Сообщений: 1721
Регистрация: 10.5.2003
Где: Эрец-Исраэль

Репутация: 11
Всего: 88



Цитата(mes @  17.10.2010,  22:55 Найти цитируемый пост)
при том что цифра не может быть "10"

Цифра не может, но max + 1 может. Или нет?  smile  




--------------------
Тут вечности запах томительный,
И свежие фрукты дешевые, 
А климат у нас – изумительный, 
И только соседи – #уевые. 
                           Игорь Губерман.
PM   Вверх
mes
Дата 18.10.2010, 00:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Dov @  17.10.2010,  22:58 Найти цитируемый пост)
но max + 1 может. Или нет? 

зависит от того что выражает max..
smile


--------------------
PM MAIL WWW   Вверх
Dov
Дата 18.10.2010, 00:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


аСинизатор
***


Профиль
Группа: Завсегдатай
Сообщений: 1721
Регистрация: 10.5.2003
Где: Эрец-Исраэль

Репутация: 11
Всего: 88



Цитата(mes @  17.10.2010,  23:00 Найти цитируемый пост)
зависит от того что выражает max..

Как что? Вот:
Цитата(Arahael @  17.10.2010,  13:02 Найти цитируемый пост)
самое большое число.



--------------------
Тут вечности запах томительный,
И свежие фрукты дешевые, 
А климат у нас – изумительный, 
И только соседи – #уевые. 
                           Игорь Губерман.
PM   Вверх
mes
Дата 18.10.2010, 00:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Dov @  17.10.2010,  23:03 Найти цитируемый пост)
самое большое число.

нужно число, получите :
Код

(int)(*max-'0') + 1



--------------------
PM MAIL WWW   Вверх
Dov
Дата 18.10.2010, 00:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


аСинизатор
***


Профиль
Группа: Завсегдатай
Сообщений: 1721
Регистрация: 10.5.2003
Где: Эрец-Исраэль

Репутация: 11
Всего: 88



Цитата(mes @  17.10.2010,  23:10 Найти цитируемый пост)
нужно число, получите :

Ну, наконец-то...   smile   Исправь у себя в коде.  smile 



--------------------
Тут вечности запах томительный,
И свежие фрукты дешевые, 
А климат у нас – изумительный, 
И только соседи – #уевые. 
                           Игорь Губерман.
PM   Вверх
mes
Дата 18.10.2010, 00:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Dov @  17.10.2010,  23:22 Найти цитируемый пост)
Ну, наконец-то...      Исправь у себя в коде.   

не буду...  smile 
так как код основан исходя из предположения о путанице тс. понятий чисел и цифр,
на которой Вы до этого заострили внимание своим кодом.. 
если предполагать что все верно, метод получения чисел тоже не верен..
 smile 
 4444й пост 



Это сообщение отредактировал(а) mes - 18.10.2010, 00:45


--------------------
PM MAIL WWW   Вверх
Dov
Дата 18.10.2010, 00:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


аСинизатор
***


Профиль
Группа: Завсегдатай
Сообщений: 1721
Регистрация: 10.5.2003
Где: Эрец-Исраэль

Репутация: 11
Всего: 88



Цитата(mes @  17.10.2010,  23:44 Найти цитируемый пост)
 4444й пост 

 smile   smile

Добавлено через 2 минуты и 14 секунд
Цитата(mes @  17.10.2010,  23:44 Найти цитируемый пост)
 Вы 

mes, когда я такое читаю, то начинаю оглядываться по сторонам, в надежде увидеть рядом с собой ещё кого-нибудь...  smile

Добавлено через 4 минуты и 46 секунд
В иврите нет обращения на 'Вы',  по-этому в Израиле обращаются только на 'ты'.


--------------------
Тут вечности запах томительный,
И свежие фрукты дешевые, 
А климат у нас – изумительный, 
И только соседи – #уевые. 
                           Игорь Губерман.
PM   Вверх
mes
Дата 18.10.2010, 00:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Dov @  17.10.2010,  23:46 Найти цитируемый пост)
 иврите нет обращения на 'Вы',  по-этому в Израиле обращаются только на 'ты'. 

ну а в английском нет на "ты"..  но пишем тo мы вроде на русском smile

терь у нас оффтопик в оффтопике smile

эх такое число испортилось smile

Это сообщение отредактировал(а) mes - 18.10.2010, 01:07


--------------------
PM MAIL WWW   Вверх
Dov
Дата 18.10.2010, 00:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


аСинизатор
***


Профиль
Группа: Завсегдатай
Сообщений: 1721
Регистрация: 10.5.2003
Где: Эрец-Исраэль

Репутация: 11
Всего: 88



Цитата(mes @  17.10.2010,  23:57 Найти цитируемый пост)
терь у нас оффтопик в оффтопике

 smile 
 
Ладно, завязываем..  smile 


--------------------
Тут вечности запах томительный,
И свежие фрукты дешевые, 
А климат у нас – изумительный, 
И только соседи – #уевые. 
                           Игорь Губерман.
PM   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.1608 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.