|
|
|
| помогите решить: "Дана непустая последовательность различных целых чисел, за которой следует нуль. Определить порядковый номер и величину наиболь¬шего среди отрицательных чисел этой последовательности" | |
|
|
|
|
|
|
|
для: Oazis
(27.11.2007 в 11:43)
| | А числа все отрицательные? | |
|
|
|
|
|
|
|
для: Oazis
(27.11.2007 в 11:43)
| | Да, непонятно, имеются положительные числа в последовательности или нет? | |
|
|
|
|
|
|
|
для: cheops
(27.11.2007 в 15:44)
| | Положительных | |
|
|
|
|
|
|
|
для: Oazis
(27.11.2007 в 23:16)
| | Т.е. последовательность содержит и положительные и отрицательные числа? | |
|
|
|
|
|
|
|
для: cheops
(28.11.2007 в 03:25)
| | да любые и полож. и отриц. | |
|
|
|
|
|
|
|
для: Oazis
(27.11.2007 в 11:43)
| | Можно поступить следующим образом
#include <iostream>
using namespace std;
int main()
{
double arr[8] = {-3.2, 4.1, -5.6, 6.1, -7.3, 8.6, -9.7, 10.1};
double min = 0;
for(int i = 0; i < sizeof(arr)/sizeof(arr[0]); i++)
{
if(min > arr[i]) min = arr[i];
}
cout << min << endl;
} |
| |
|
|
|
|
|
|
|
для: cheops
(28.11.2007 в 09:06)
| | Всё отлично но нужно чтобы числа задавались пользователем! | |
|
|
|
|
|
|
|
для: Oazis
(29.11.2007 в 00:53)
| | Тогда можно отталкиваться от следующего варианта
#include <iostream>
using namespace std;
int main()
{
double arr[100];
// Читаем строки
int i;
for(i = 0; i < 100; i++)
{
cout << "Введите строку ";
cin >> arr[i];
// Покидаем цикл, если пользователь
// ввел 0
if(arr[i] > -0.0001 && arr[i] < 0.0001) break;
}
int count = i;
double min = 0;
for(i = 0; i < count; i++)
{
if(min > arr[i]) min = arr[i];
}
cout << min << endl;
} |
PS Использование STL допускается в программе - или всё требуется делать классическими средствами? | |
|
|
|
|
|
|
|
для: cheops
(29.11.2007 в 03:57)
| | А граница массива известна заранее? | |
|
|
|
|
|
|
|
для: oradev
(29.11.2007 в 05:43)
| | Для cheops:спасибо тебе, но немог бы ты пример сделать не для "с" простой, а для "с expres" и пожалуйста класическим способом границы массива не известны | |
|
|
|
|
|
|
|
для: Oazis
(29.11.2007 в 06:54)
| | > не для "с" простой, а для "с expres"
Под "с expres" что подразумевается?
> пожалуйста класическим способом границы массива не известны
Т.е. стандартную библиотеку STL использовать нельзя? | |
|
|
|
|
|
|
|
для: cheops
(29.11.2007 в 07:14)
| | нет можно но чтоб было как бы по проще. Для изучения программирования используется Microsoft Visual C++ 2005 Express Edition | |
|
|
|
|
|
|
|
для: Oazis
(29.11.2007 в 11:03)
| | Постараюсь завтра отладить вариант именно для Microsoft Visual C++ 2005 Express Edition. | |
|
|
|
|
|
|
|
для: cheops
(29.11.2007 в 16:16)
| | A можно вместо cout сделать через printf | |
|
|
|
|
|
|
|
для: Oazis
(13.12.2007 в 01:04)
| | Можно поступить следующим образом
#include <stdlib.h>
#include <stdio.h>
using namespace std;
int main()
{
double arr[100];
char input[80];
int i;
for(i = 0; i < 100; i++)
{
printf("%s", "Введите число ");
// Читаем введённую строку
fgets(input, 80, stdin);
// Преобразуем её в число с плавающей
// точкой
arr[i] = atof(input);
// Покидаем цикл, если пользователь
// ввел 0
if(arr[i] > -0.0001 && arr[i] < 0.0001) break;
}
int count = i;
// Ищем минимальное отрицательное значение
double min = 0;
for(i = 0; i < count; i++)
{
if(min > arr[i]) min = arr[i];
}
// Выводим результат
printf("%f", min);
} |
| |
|
|
|
|
|
|
|
для: Oazis
(29.11.2007 в 11:03)
| | >нет можно но чтоб было как бы по проще. Для изучения программирования используется
>Microsoft Visual C++ 2005 Express Edition
На самом деле и предыдущи вариант тоже будет работать, если вы создадите проект следующим образом File->New->Project->General->Empty Project. | |
|
|
|
|
|
|
|
для: cheops
(13.12.2007 в 07:05)
| | неработает программа выдает ошибку:error C2871: 'std' : a namespace with this name does not exist | |
|
|
|
|
|
|
|
для: Oazis
(16.12.2007 в 11:11)
| | Вы точно создаёте проект при помощи File->New->Project->General->Empty Project? | |
|
|
|
|
|
|
|
для: cheops
(16.12.2007 в 16:06)
| | нет вот так: File->New->Project->Win32->Empty proekt
Она полюбому не работает там ошибка | |
|
|
|
|
|
|
|
для: Oazis
(17.12.2007 в 10:13)
| | Win32 не поддерживает консоль (эти проекты обслуживают только графические режимы) - необходимо выбирать General. | |
|
|
|
|
|
|
|
для: cheops
(17.12.2007 в 16:01)
| | я и чеоез general пробовал в программе ошибка | |
|
|
|
|
|
|
|
для: Oazis
(18.12.2007 в 06:24)
| | Приведите сообщение об ошибке?
PS Может мой проект выложить - попробуйте с него запустить программу? | |
|
|
|
|
|
|
|
для: cheops
(18.12.2007 в 09:18)
| | выдает ошибку:error C2871: 'std' : a namespace with this name does not exist | |
|
|
|
|
|
|
|
для: Oazis
(19.12.2007 в 06:32)
| | нельзя ли программу пустить без использования using namespace std; а если нет то как исправить ошибку 'std' : a namespace with this name does not exist | |
|
|
|
|
|
|
|
для: Oazis
(22.12.2007 в 13:29)
| | Если вы действительно используете Microsoft Visual C++ 2005 Express Edition и выберите File->New->Project->General->Empty Project вместо File->New->Project->Win32->Empty proekt - у вас всё заработает. Дело в том, что win32 - это оконное приложение, а вам нужно консольный проект, чтобы запустить приведённую выше программу. | |
|
|
|
|
|
|
|
для: cheops
(22.12.2007 в 16:38)
| | яиспользую так вы указали но программа выдает выше указанную ошибку | |
|
|
|
|
 99.3 Кб |
|
|
для: Oazis
(23.12.2007 в 07:27)
| | Воспользуйтесь проектом во вложении. Похоже действительно при использовании C-библиотек Visual Studio не разрешает пользоваться стандартным пространством имён (хотя вообще-то это противоречит стандарту C++). | |
|
|
|
|
|
|
|
для: cheops
(23.12.2007 в 07:55)
| | а ее ни как нельзя сделать чтобы она так работала | |
|
|
|
|
|
|
|
для: Oazis
(23.12.2007 в 13:15)
| | Так, это как? Во вложении имеется готовый исполняемый файл - он не подходит? | |
|
|
|
|
|
|
|
для: cheops
(24.12.2007 в 04:37)
| | а что дает вот эта функция
И что такое count | |
|
|
|
|
|
|
|
для: Oazis
(24.12.2007 в 10:29)
| | Это функция преобразует символьный массив в вещественное число. Т.е, я так понял, изначально данные вводятся в виде строк, а затем преобразуются в числа. | |
|
|
|
|
|
|
|
для: graphoman
(24.12.2007 в 10:58)
| | что такое count | |
|
|
|
|
|
|
|
для: Oazis
(24.12.2007 в 12:59)
| | Количество введённых пользователем чисел. | |
|
|
|