Форум программистов, компьютерный форум, киберфорум
Наши страницы

Cчитать с клавиатуры строку символов, подсчитать количество положительных чисел. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Разработать класс Point для представления точки на плоскости http://www.cyberforum.ru/cpp-beginners/thread529969.html
Разработать класс Point для представления точки на плоскости. Разработать класс, производный от класса Point. Создать гетерогенный массив из объектов этих классов, задать произвольно координаты и...
C++ С++ для обработки текстового файла. Помогите пожалуйста "Создать текстовый файл с произвольным числом строк. Заменить самое длинное слово каждой строки на ваше имя." http://www.cyberforum.ru/cpp-beginners/thread529946.html
Поменять в столбце взаимно противоположные числа C++
дан массив 4 на 4 поменять в столбце взаимно противоположные числа (т.е. напр. 3 и -3)
C++ Текстовый файл, который содержит номера телефонов сотрудников
A. Сформировать текстовый файл, который содержит номера телефонов сотрудников учреждения: указываются фамилия, инициалы и номер телефона. B. Используя данные из этого файла, напечатать номер...
C++ Вычислить площадь треугольника http://www.cyberforum.ru/cpp-beginners/thread529665.html
Вычислить площадь треугольника со сторонами а, Ь, с по формуле Герона, проверив условие корректности исходных данных (длины всех сторон положительны, сумма длин любых двух сторон больше длины...
C++ Поменять местами максимальный и минимальный элемент в массиве дан массив 4 на 4 в каждой строке поменять местами максимальный и минимальный элемент подробнее

Показать сообщение отдельно
Nameless One
Эксперт С++
5775 / 3425 / 255
Регистрация: 08.02.2010
Сообщений: 7,448
28.03.2012, 11:14
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
38
39
40
41
42
#include <stdio.h>
#include <ctype.h>
#include <stdlib.h>
 
int all(const char* str, int (*pred)(int))
{
    while(*str)
    if(!pred(*str++))
        return 0;
 
    return 1;
}
 
int main(int argc, char* argv[])
{
    size_t pos_count = 0;
    double number;
    char* endptr;
    
    if(argc != 2)
    {
    fprintf(stderr, "Usage: %s NUMBERS\n", argv[0]);
    exit(1);
    }
 
    for(number = strtod(argv[1], &endptr);
    argv[1] != endptr;
    argv[1] = endptr, number = strtod(argv[1], &endptr))
 
    if(number > 0)
        ++pos_count;
 
    if(*endptr != '\0' && !all(endptr, isspace))
    {
    fprintf(stderr, "Bad input near `%s'\n", endptr);
    exit(1);
    }
    
    printf("# of positive numbers: %zd\n", pos_count);
            
    exit(0);
}
Код
Welcome to the Emacs shell

~/samples/c $ ./sample ".3 -5 0 1e-3 -8.15 42 "
# of positive numbers: 3
~/samples/c $
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru