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

Вводить отрицательные числа до тех пор пока не будет введено положительное число - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
Adio
0 / 0 / 0
Регистрация: 04.03.2011
Сообщений: 17
13.03.2011, 19:29     Вводить отрицательные числа до тех пор пока не будет введено положительное число #1
Вводить отрицательные числа до тех пор пока не будет введено положительное число. Найти кол-во введеных чисел, значение наименьшего из введеных чисел и его порядковый номер.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.03.2011, 19:29     Вводить отрицательные числа до тех пор пока не будет введено положительное число
Посмотрите здесь:

C++ Пользователь вводит с клавиатуры числа, до тех пор пока не введено число 6
C++ Вводить два числа и искать их произведение, до тех пор пока последнее число не будет введено равным 1
Вводить с клавиатуры числа до тех пор, пока не будет нажата клавиша <<ESC>> C++
C++ Вводить с клавиатуры целые числа (>0) и выводить на экран квадраты этих чисел до тех пор, пока не будет введено число 0. Использовать цикл do...while.
Вводить с клавиатуры числа и выводить квадраты этих чисел до тех пор, пока не будет введено число 0 C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
igorrr37
 Аватар для igorrr37
1594 / 1222 / 118
Регистрация: 21.12.2010
Сообщений: 1,868
Записей в блоге: 7
13.03.2011, 20:03     Вводить отрицательные числа до тех пор пока не будет введено положительное число #2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <stdio.h>
 
int main(){
    float min=0, nMin=-1, tmp, cou=0;
    while(puts("Input number")!=EOF&&scanf("%f", &tmp)&&tmp<0){
        ++cou;
        if(tmp<=min){
            min=tmp;
            nMin=cou;
        }
    }
    if(min<0)printf("min= %f, nMin= %d, cou= %d", min, (int)nMin, (int)cou);
    else puts("No negative values were inputted");
    return 0;
}
Adio
0 / 0 / 0
Регистрация: 04.03.2011
Сообщений: 17
13.03.2011, 21:48  [ТС]     Вводить отрицательные числа до тех пор пока не будет введено положительное число #3
а чуть попроще можно

Добавлено через 39 секунд
а то мы EOF и puts ещё не проходили)
Virtyoz
0 / 0 / 0
Регистрация: 15.11.2012
Сообщений: 17
29.11.2012, 00:27     Вводить отрицательные числа до тех пор пока не будет введено положительное число #4
Под рукой нет компилятора. Попробуй так:

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <stdio.h>
 
int main(){
    float min=0, nMin=-1, tmp, cou=0;
    while(scanf("%f", &tmp)&&tmp<0){
        ++cou;
        if(tmp<=min){
            min=tmp;
            nMin=cou;
        }
    }
    if(min<0)printf("min= %f, nMin= %d, cou= %d", min, (int)nMin, (int)cou);
    else printf("No negative values were inputted");
    return 0;
}
Ev[G]eN
Эксперт С++
 Аватар для Ev[G]eN
5093 / 1531 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
29.11.2012, 00:40     Вводить отрицательные числа до тех пор пока не будет введено положительное число #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
 
int main() {
    int num = 0, min = 0, ind = 0, cnt = 1;
    
    while (num < 1) {
          std::cin >> num;
          if (num < min) {
                  min = num;
                  ind = cnt;
          }
          cnt++;
    }
    std::cout << "Minimal: " << min << "; Number of minimal: " << ind << "; Number of elements: " << cnt - 1 << std::endl;
    
    system("pause");
    return 0;
}
Virtyoz
0 / 0 / 0
Регистрация: 15.11.2012
Сообщений: 17
29.11.2012, 00:45     Вводить отрицательные числа до тех пор пока не будет введено положительное число #6
Добавил запросы на ввод.

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
int main()
{
 
    float min=0, nMin=-1, tmp, cou=0;
    printf("Input negative number. Or positive to stop programm\n");
    while(scanf("%f", &tmp)&&tmp<0){
        printf("Another one\n");
        ++cou;
        if(tmp<=min){
            min=tmp;
            nMin=cou;
        }
    }
    if(min<0)printf("min= %f, nMin= %d, cou= %d", min, (int)nMin, (int)cou);
    else printf("No negative values were inputted");
    scanf("%f", &tmp);
    return 0;
}
Yandex
Объявления
29.11.2012, 00:45     Вводить отрицательные числа до тех пор пока не будет введено положительное число
Ответ Создать тему
Опции темы

Текущее время: 10:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru