Как узнать входит ли цифра 3 в запись числа

Тема в разделе "Общие вопросы по С и С++", создана пользователем Azat_aga, 16 ноя 2006.

Статус темы:
Закрыта.
  1. Azat_aga

    Azat_aga Гость

    Всем привет! очень полезный у вас форум. Мне очень понравилось. Помогите пжалуйста написать программу. Звучит она так:
    Дано натуральное число n. Выяснить, входит ли цифра 3 в запись числа?
    Я вот никак не могу выяснить, как сделать проверку на число 3. Разделить число на 10 типа b%=10 ? а дальше как?
     
  2. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    перевести число в строку.. и проверить есть ли в строке символ 3
     
  3. Azat_aga

    Azat_aga Гость

    а можешь написать как?
     
  4. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    К сожалению под рукой нет Борланд С++ , но на Delphi

    Код (Text):
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    if InNum(StrToInt(edit1.Text), 3) then
    ShowMessage('есть');
    end;




    function InNum(val1, val2: integer): boolean;
    var
    i: integer;
    MyStr: string;
    begin
    result:= false;
    MyStr := IntToStr(val1);

    for i := 0 to Length(MyStr) do
    if MyStr[i] = IntToStr(val2) then result := true;  
    end;
     
  5. Azat_aga

    Azat_aga Гость

    да я делфи вообще не знаю.... мне нужно на С++ !!!!!!!!!!!!!
     
  6. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    тока без эмоций.... а С++ вы знаете??? если да то перенести код не составит труда... в чем загвоздка?
     
  7. Azat_aga

    Azat_aga Гость

    я С++ плохо знаю, но из того что знаю, у вас ничего не увидел... Может вы посоветуете кого нибудь с этого форума, кто сможет мне помочь?
     
  8. European

    Регистрация:
    4 сен 2006
    Сообщения:
    2.580
    Симпатии:
    0
    Для перевода числа в строку воспользуйся itoa
     
  9. Azat_aga

    Azat_aga Гость

    а никак нельзя всю программку написать?
     
  10. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    <!--QuoteBegin-Azat_aga+16:11:2006, 17:28 -->
    <span class="vbquote">(Azat_aga @ 16:11:2006, 17:28 )</span><!--QuoteEBegin-->а никак нельзя всю программку написать?
    [snapback]48039" rel="nofollow" target="_blank[/snapback]​
    [/quote] - а как же.... пачему нельзя.... можно... скока платите?
     
  11. European

    Регистрация:
    4 сен 2006
    Сообщения:
    2.580
    Симпатии:
    0
    Конечно можно, но стимула нет
     
  12. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    Для: European
    +1


    Для: Azat_aga
    Даёш стимул в массы... массивы..константы..... переменные... тьфу...пашёл я дамой :)
     
  13. European

    Регистрация:
    4 сен 2006
    Сообщения:
    2.580
    Симпатии:
    0
    <!--QuoteBegin-Morpheus+16:11:2006, 17:34 -->
    <span class="vbquote">(Morpheus @ 16:11:2006, 17:34 )</span><!--QuoteEBegin-->Даёш стимул в массы... массивы..константы..... переменные... тьфу...пашёл я дамой
    [snapback]48042" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    Удачно добраться, а я еще стимула подожду :)
     
  14. Azat_aga

    Azat_aga Гость

    А вас тут че все платно чтоли? я думал вы людям помогаете
     
  15. European

    Регистрация:
    4 сен 2006
    Сообщения:
    2.580
    Симпатии:
    0
    Очередной любитель халявы...
     
  16. Azat_aga

    Azat_aga Гость

    Да прога же легкая, минут 5 максимум, для того кто соображает
     
  17. LAW

    LAW Гость

    Проверить есть ли в строке число 3 можно гораздо проще
    AnsiString aaa;
    int bbb;
    bbb=aaa.Pos("3");
    если bbb -1 значит нет.
     
  18. Kmet

    Kmet Well-Known Member

    Регистрация:
    25 май 2006
    Сообщения:
    1.017
    Симпатии:
    1
    Зачем в строку? Вы еще куда чего переведите? Ясно же что преподаватель ожидает другой алгоритм

    int i=234;
    bool b=false;
    do
    {
    b=(bool)i%10==3;
    }while((i=i/10) && !:);

    такой вот набросок алгоритм думаю понятен
     
  19. LAW

    LAW Гость

    Хм. Интересно, а реально что быстрее будет срабатывать по тактам? Со строкой или с числом?
     
  20. Kmet

    Kmet Well-Known Member

    Регистрация:
    25 май 2006
    Сообщения:
    1.017
    Симпатии:
    1
    никогда не задумывался каким образом число в строку преобразовывается?!

    Вообще-то не соотвествует стандарту.
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей