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

Вопросы по C++ - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вычислить значение выражения http://www.cyberforum.ru/cpp-beginners/thread364241.html
ребят,помогите решить эти задачи в "С".
C++ C++ и MPI Подскажите пожалуйста, бесплатный компилятор, который работает хотя бы со второй версией библиотеки MPI, хотя уже есть третья версия. Платформа на компе: Windows, конфиг - AMD. http://www.cyberforum.ru/cpp-beginners/thread364232.html
C++ классы
что значит : и :: A-основной класс B-производный класс B::B(int ch,char *str):A(ch) {} непонимаю зачем тут A(ch) без этого не компилируется Добавлено через 17 минут
C++ Сохранить переменный член в области динамической памяти ????
Есть класс class Analiz { public: Analiz(); ~Analiz(); int A(){return itsA;} void B(int I){itsA=I;} private:
C++ Передача вектора по ссылке http://www.cyberforum.ru/cpp-beginners/thread364207.html
Делаю задание Страуструпа на шаблоны, но столкнулся с тем что передавая вектор по ссылке он передаётся не по ссылке (такая вот тавтология). #include <iostream> #include <vector> #include <algorithm> using namespace std; template<typename T> class Sort {
C++ Дано натуральное число <= 9999; верно ли, что оно содержит три одинаковых цифры? дано натуральное число <=9999 верно ли что оно содержит три одинаковых цифры как например 6676, 4544, 0006? подробнее

Показать сообщение отдельно
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
11.10.2011, 09:32     Вопросы по C++
6)
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
 
int ndigits(int n);
 
int main(void)
{
    printf("%d %d %d\n", ndigits(12345), ndigits(0), ndigits(123));
    printf("%d %d %d\n", ndigits(-12345), ndigits(0), ndigits(-123));
    return 0;
}
 
int ndigits(int n)
{
    if (n == 0)
        return 0;
    return 1 + ndigits(n / 10);
}
Код
[guest@localhost tests]$ .ansi t.c -o t
[guest@localhost tests]$ ./t
5 0 3
5 0 3
[guest@localhost tests]$
для нуля возвращает ноль цифр

Добавлено через 10 минут
7)
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
 
#include <stdio.h>
 
int sumdigits(int n);
 
int main(void)
{
    printf("%d %d %d\n", sumdigits(12345), sumdigits(0), sumdigits(123));
    printf("%d %d %d\n", sumdigits(-12345), sumdigits(0), sumdigits(-123));
    return 0;
}
 
int sumdigits(int n)
{
    int neg, v;
    
    if (n == 0)
        return 0;
    neg = 0;
    if (n < 0) {
        neg = 1;
        n = -n;
    }
    v = n % 10 + sumdigits(n / 10);
    return neg ? -v : v;
}
Код
[guest@localhost tests]$ .ansi t.c -o t
[guest@localhost tests]$ ./t
15 0 6
-15 0 -6
[guest@localhost tests]$
Добавлено через 11 минут
5)
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
 
#include <stdio.h>
#include <stdlib.h>
 
int main(void)
{
    const char *s = "1234 5678 91011 12";
    int n, offset, tmp;
    int *arr, i;
    
    n = offset = 0;
    while (sscanf(s + offset, "%*d%n", &tmp) == 0) {
        offset += tmp;
        n++;
    }
    
    printf("%d\n", n);
    
    arr = (int *) malloc(n * sizeof(int));
    if (arr == NULL)
        return 1;
 
    i = offset = 0;
    while (sscanf(s + offset, "%d%n", arr + i, &tmp) == 1) {
        offset += tmp;
        i++;
    }
    
    for (i = 0; i < n; i++)
        printf("%d%s", arr[i], (i + 1 < n) ? " " : "\n");
    
    free(arr);
    return 0;
}
Код
[guest@localhost tests]$ .ansi t.c -o t
[guest@localhost tests]$ ./t
4
1234 5678 91011 12
[guest@localhost tests]$
 
Текущее время: 08:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru