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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 63, средняя оценка - 4.94
samuel
0 / 0 / 0
Регистрация: 25.03.2009
Сообщений: 9
#1

Цикл do while - C++

29.03.2009, 21:11. Просмотров 7563. Ответов 1
Метки нет (Все метки)

Задача с использованием цикла do while.

Не могу понять какое нужно поставить условие.

Код
#include<stdio.h>
#include<conio.h>

void main ()
{
int a,y;
clrscr ();
      do
      {
       printf ("\nEnter value: ");
	scanf("%i",&a);

	if ((y>a)&&(a!=0))
	y=a;
   }
while (a!=0);
printf ("\nmin %i\n",y);
getch();
    }
Должна находить минимальный элемент во введенной с клавиатуры последовательности положительных чисел, окончание ввода последовательности, ввод 0.
Программа находит прекрасно все. Но возникла некоторая трудность. Программа считает и отрицательные числа, но по идее мы можем вводить в положительной последовательности отрицательные числа и при этом программа их пропускает, но если все элементы будут отрицательными при вводе 0 нам будет сообщатся что данная программа не работает с отрицательными числами.
Пожалуйста помогите реализовать это, заранее благодарен.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.03.2009, 21:11     Цикл do while
Посмотрите здесь:

C++ Цикл FOR
C++ Цикл С++
Цикл for C++
цикл while C++
цикл for... C++
Цикл for C++
C++ Цикл
цикл do и while C++
Цикл C++
C++ Цикл while
цикл while C++
цикл for C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Gravity
557 / 551 / 39
Регистрация: 29.01.2009
Сообщений: 1,274
29.03.2009, 21:28     Цикл do while #2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
#include <conio.h>
#include <limits.h>
 
main()
{
    int a, y = INT_MAX;
    
    printf("Enter values:\n");
    do {     
       scanf("%d", &a);
       if(a > 0 && a < y)
          y = a;
    } while(a);
    y == INT_MAX ? printf("All values < 0 or values not entered!\n") : printf("Min = %d\n", y);
    
    getch();
    return 0;
}
Yandex
Объявления
29.03.2009, 21:28     Цикл do while
Ответ Создать тему
Опции темы

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