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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 23, средняя оценка - 4.61
Bloodykeeper
This party getting crazy!
78 / 74 / 1
Регистрация: 22.09.2009
Сообщений: 427
#1

Дирректива define и прочее - C++

11.02.2010, 16:51. Просмотров 2935. Ответов 33
Метки нет (Все метки)

Помогите пожалуйста решить задание, никогда раньше с такими не сталкивался! =(

1) Даны целые числа x, у и вещественное число z. Используя директиву #define для нахождения наибольшего из чисел, вычислить
S=max(x+y+z, xyz)+3max(xy2, z2).

2)Назовём шестизначный автобусный билет удачным, если сумма его цифр делится на 7. Могут ли два билета подряд быть удачными?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.02.2010, 16:51     Дирректива define и прочее
Посмотрите здесь:

Дирректива процессора - C++
Добрый Вечер! У меня в экзаменационном билете по Си есть такой вопрос: директивы процессора. заголовочный файл. Не могли бы вы мне...

Скремблирование и прочее - C++
Добрый день, помогите разобраться. Нужно написать программу для скремблирование файлов. Но перед этим вопрос: как из исходного файла...

С++ VLA и прочее... - C++
Перенесено из http://www.cyberforum.ru/cpp-beginners/thread713916.html Dev-C++ меня удивляет. Вот такой код компилирует без ошибок и...

Рекурентная формула и прочее - C++
Добрый день , пишу вам для получения помощи! Никак не могу сделать рекурентную формулу и программу под выражением "б"Помогите...

#define - C++
Здравствуйте, дорогие программисты! сразу хочу сказать, что в С++ я совсем недавно, поэтому толком ничего не знаю Во-первых,...

c++11 и $define - C++
Есть код который прекрасно компилируется без -std=c++11, но как только я включаю эту опцию то константы препроцессора не заменяются и...

#define - C++
#define зачем нужна это заголовочный файл какие у него функции и как им ползоватса?

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Genius Ignat
1235 / 773 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
12.02.2010, 20:31     Дирректива define и прочее #21
два билета подряд
Это как объясните?
Может я что то не до понимаю.
insideone
Модератор
Автор FAQ
3636 / 914 / 49
Регистрация: 10.01.2010
Сообщений: 2,465
12.02.2010, 20:32     Дирректива define и прочее #22
Типа есть билет x и он оказался удачным. Может ли x++ быть удачным?
Genius Ignat
1235 / 773 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
12.02.2010, 20:34     Дирректива define и прочее #23
Тьфу...
Хотя б выражались правильнее.
easybudda
Эксперт С++
9456 / 5469 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
12.02.2010, 20:45     Дирректива define и прочее #24
Тупым перебором не нашлось таких билетов...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
 
int main(){
    const int start_num = 8;
    const int finish_num = 1000000;
    const int divider = 7;
    
    for ( int i = start_num; i < finish_num; ++i )
        if ( !(i % divider ) && !((i - 1) % divider) )
            std::cout << (i - 1) << " and " << i << std::endl;
    
    return 0;
}
insideone
Модератор
Автор FAQ
3636 / 914 / 49
Регистрация: 10.01.2010
Сообщений: 2,465
12.02.2010, 21:02     Дирректива define и прочее #25
2 easybudda что то я не разобрался вы разве сумму цифр считаете. Вы помоему сам номер билета на 7 делите

Сумма цифр будет на 1 больше или на 8 меньше, вроде такое число не будет делиться на 7
easybudda
Эксперт С++
9456 / 5469 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
12.02.2010, 21:05     Дирректива define и прочее #26
insideone, ага, погорячился... Вот много раз говорил себе - читай внимательнее задания... Домой приеду, не лень будет - переделаю...
Evg
Эксперт CАвтор FAQ
17472 / 5710 / 363
Регистрация: 30.03.2009
Сообщений: 15,683
Записей в блоге: 26
12.02.2010, 23:44     Дирректива define и прочее #27
Bloodykeeper, после строки со scanf'ом воткни

C
1
printf("x=%d, y=%d, z=%f", x, y, z);
insideone
Модератор
Автор FAQ
3636 / 914 / 49
Регистрация: 10.01.2010
Сообщений: 2,465
13.02.2010, 01:36     Дирректива define и прочее #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
int main(){
    bool Luck = false;
    int LuckCount = 0;
    for (int b = 0; b < 1000000; ++b)
    {
        char Buf[6] = {0};
        char One[2] = {0, 0};
        itoa(b, &Buf[0], 10);
        unsigned short Summ = 0;
        for (int i = 0; i < 6; ++i)
        {
            One[0] = Buf[i];
            Summ += atoi(&One[0]);
        }
        if ( (Summ % 7) == 0 )
        {
            if ( Luck )
            {
                LuckCount++;
                cout << "Билет " << (b-1) << " и билет " << b << " счастливые!" << endl;
                Luck = false;
            }
            else
            {
                Luck = true;
            }
        }
        else
        {
            Luck = false;
        }
    }
    if ( LuckCount == 0 )
        cout << "Таких билетов нет :(";
 
return 0;
}
Попробовал решить брутфорсом, вроде код верный. Не знаю уж... выдает что
Билет 69999 и билет 70000 счастливые!
Билет 159999 и билет 160000 счастливые!
Билет 249999 и билет 250000 счастливые!
Билет 339999 и билет 340000 счастливые!
Билет 429999 и билет 430000 счастливые!
Билет 519999 и билет 520000 счастливые!
Билет 589999 и билет 590000 счастливые!
Билет 609999 и билет 610000 счастливые!
Билет 679999 и билет 680000 счастливые!
Билет 769999 и билет 770000 счастливые!
Билет 859999 и билет 860000 счастливые!
Билет 949999 и билет 950000 счастливые!
Так?
easybudda
Эксперт С++
9456 / 5469 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
13.02.2010, 01:45     Дирректива define и прочее #29
вроде исправился...
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
 
long digits_sum(long number){
    long summ = 0;
    
    if ( number > 0 ) {
        do {
            summ += number % 10;
        } while ( number /= 10 );
    }
    
    return (summ);
}
 
int main(void){
    long i;
    
    for ( i = 7; i < 999999; ++i )
        if ( !(digits_sum(i) % 7) && !(digits_sum(i+1) % 7) )
            printf("%06ld %06ld\n", i, i+1);
    
    return 0;
}
Добавлено через 1 минуту
insideone, ага, у меня то же получилось...
insideone
Модератор
Автор FAQ
3636 / 914 / 49
Регистрация: 10.01.2010
Сообщений: 2,465
13.02.2010, 01:48     Дирректива define и прочее #30
2 easybudda Двойная проверка это сила
easybudda
13.02.2010, 01:53
  #31

Не по теме:

insideone, "Мало ли, у кого где что стоит, главное - чтобы работало!" (с) В. С. Черномырдин

insideone
13.02.2010, 01:57
  #32

Не по теме:

Топикстартер будет счастлив что все везде стоит

easybudda
Эксперт С++
9456 / 5469 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
13.02.2010, 01:59     Дирректива define и прочее #33
insideone, ага, подумав убрал это "усовершенствование". Мало ли, вдруг 3 подряд счастливых окажутся...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.02.2010, 02:03     Дирректива define и прочее
Еще ссылки по теме:

define - C++
Всем здрасьте , что означает эта строчка? #define MAX(a,b) a&gt;b? a:b

define не - C++
Здравствуйте. &quot;Дефайню&quot; &quot;%f&quot; для вывода: #define fss &quot;%f&quot;; . И потом делаю вывод вот такой вот: for(i=0;i&lt;n;i++) fscanf(in,fss,&amp;a-&gt;di);. И...

define - C++
И еще такой вопрос для чего служит #define ??

#define c :: - C++
Подскажите как реализовать такую замену: #define sa2::sys::getClientKernel()-&gt;getXDBTManager() cls_SimpleXDBTManager::Instance() ...

Указатель на массив char и прочее - C++
Страуструп для проверки прочитанного в заданиях после одной из глав просит через typedef сделать пару объявлений и вот как делать некоторые...


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

Или воспользуйтесь поиском по форуму:
insideone
Модератор
Автор FAQ
3636 / 914 / 49
Регистрация: 10.01.2010
Сообщений: 2,465
13.02.2010, 02:03     Дирректива define и прочее #34
Чтобы осуществить i+=2 можно было бы сохранять флаг о предыдущем результате в виде true\false а в условиее добавить (Flag && ...) || ( ... && ... ) но это учебная программа а не драйвера
Yandex
Объявления
13.02.2010, 02:03     Дирректива define и прочее
Ответ Создать тему
Опции темы

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