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

длина наименьшего отрезка - C++

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 5.00
LeshkinMaloy
0 / 0 / 0
Регистрация: 18.11.2009
Сообщений: 20
18.11.2009, 22:20     длина наименьшего отрезка #1
Простите,в поиске не нашёл. Помогите решить пожалуйста на C++

Дан массив А из N вещественных чисел. Найти длину наименьшего отрезка числовой оси, содержащего числа A[0], A[1], . . ., A[N-1].

Добавлено через 50 минут
Ну помогите ради бога,завтра надо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.11.2009, 22:20     длина наименьшего отрезка
Посмотрите здесь:

Нахождение наименьшего числа (С++) C++
Составить программу для нахождения наибольшего и наименьшего общего делителя и наименьшего общего кратного двух натуральных чисел C++
C++ Длина отрезка по координатам вершин
Длина отрезка C++
C++ с++ нахождения наименьшего натурального
задан текст. удалить из нее все слова, длина которых четная (создать новый массив, оставив все слова, длина которых нечетная) C++
Программа наименьшего объема C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ser4ega
27 / 27 / 3
Регистрация: 15.11.2009
Сообщений: 143
18.11.2009, 22:22     длина наименьшего отрезка #2
Ищем максимум, ищем минимум, отнимаем из одного другое.
LeshkinMaloy
0 / 0 / 0
Регистрация: 18.11.2009
Сообщений: 20
18.11.2009, 22:39  [ТС]     длина наименьшего отрезка #3
Цитата Сообщение от ser4ega Посмотреть сообщение
Ищем максимум, ищем минимум, отнимаем из одного другое.
ну да,это я нагуглил,просто программно не могу реализовать

Добавлено через 12 минут
не понимаю как это - содержащего числа A[0], A[1], . . ., A[N-1]. Зачем тогда вещественный массив раз целые числа
Лукас
4 / 4 / 1
Регистрация: 17.11.2009
Сообщений: 32
18.11.2009, 22:46     длина наименьшего отрезка #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include<conio.h>
#include<iostream.h>
main()
 {clrscr();
   int i,n=15,
   float m[n],max=-999999.0,min=999999.0;
   cout<<"vvodite el-ty";
   for(i=0;i<n;i++)
     {cout<<"№"<<i+1<<"  ";
       cin>>m[i];
       if(m[i]<min) min=m[i];
       if(m[i]>max) max=m[i];
     }
   cout<<"naimen. otrezok = "<<max-min;
   getch();
 }
Добавлено через 1 минуту
но это, как может заметить внимательный читатель, сработает только если сами элементы не меньше -999999 и не больше 999999.

Добавлено через 1 минуту
проверил, работает?
LeshkinMaloy
0 / 0 / 0
Регистрация: 18.11.2009
Сообщений: 20
18.11.2009, 22:56  [ТС]     длина наименьшего отрезка #5
спасибо, вот только в 6-й строке "Constant expression required"
Лукас
4 / 4 / 1
Регистрация: 17.11.2009
Сообщений: 32
18.11.2009, 22:58     длина наименьшего отрезка #6
после 15 не зпт, а точка с зпт. ^^'
LeshkinMaloy
0 / 0 / 0
Регистрация: 18.11.2009
Сообщений: 20
18.11.2009, 23:01  [ТС]     длина наименьшего отрезка #7
Цитата Сообщение от Лукас Посмотреть сообщение
после 15 не зпт, а точка с зпт. ^^'
как ни странно это я догадался исправить и всё же такая же ошибка :-)
odip
Эксперт C++
 Аватар для odip
7226 / 3288 / 59
Регистрация: 17.06.2009
Сообщений: 14,165
18.11.2009, 23:02     длина наименьшего отрезка #8
но это, как может заметить внимательный читатель, сработает только если сами элементы не меньше -999999 и не больше 999999.
Писать нужно не так криво.
Нужно проверить что есть хотя бы один элемент и
C
1
max= min= m[0];
Лукас
4 / 4 / 1
Регистрация: 17.11.2009
Сообщений: 32
18.11.2009, 23:03     длина наименьшего отрезка #9
да, точно, забываю.

а та ошибка - n нужно объявлять как const.
тобшь
const n=15;
int i;
...
Golovastik
 Аватар для Golovastik
11 / 11 / 0
Регистрация: 25.05.2009
Сообщений: 435
18.11.2009, 23:05     длина наименьшего отрезка #10
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 <iostream>
using namespace std;
 
int main()
{
    setlocale(0,"");
    int k;
    double min = 10000.0, max = -1000000, rez;
    cout<<"Введите кол-во отрезков -> ";
    cin>>k;
    double *dlina = new double[k];
    cout<<"Введите длину отрезка: \n";
    for(int i = 0; i < k; i++)
    {
    cout<<endl<<"\t-> ";
    cin>>dlina[k];
    if(min>dlina[k]) min = dlina[k];
    if(max<dlina[k]) max = dlina[k];
           rez = max - min;
    }
        cout<<"Минимальный отрезок = "<<min<<endl;
        cout<<"Максимальный отрезок = "<<max<<endl;
        cout<<"Найменьший отрезок = "<<rez<<endl;
    cin.ignore();
    cin.get();
}
LeshkinMaloy
0 / 0 / 0
Регистрация: 18.11.2009
Сообщений: 20
18.11.2009, 23:10  [ТС]     длина наименьшего отрезка #11
Цитата Сообщение от Лукас Посмотреть сообщение
да, точно, забываю.

а та ошибка - n нужно объявлять как const.
тобшь
const n=15;
int i;
...
а что означает "Function should return a value" какое-то значение функции насколько я разбираюсь в английском
Golovastik
 Аватар для Golovastik
11 / 11 / 0
Регистрация: 25.05.2009
Сообщений: 435
18.11.2009, 23:33     длина наименьшего отрезка #12
Код
а что означает "Function should return a value" какое-то значение функции насколько я разбираюсь в английском
Означает что Функция должна возвращать величину.
Если ты объявишь как const n=15;
Ты не сможешь, никак в программе поменять значение n. При попытку, прописать где-то в программе, к примеру n = 25, программа не скомпилится.
Лукас
4 / 4 / 1
Регистрация: 17.11.2009
Сообщений: 32
18.11.2009, 23:37     длина наименьшего отрезка #13
а зачем нам ее менять?
она вообще вынесена отдельно только для того, чтобы, если нам вдруг взбредет в голову "а пусть-ка у нас будет не 15 элементов в массиве, а 20!", не менять это 15 на 20 по всему коду (а ведь где-то можно и забыть), а изменить только в объявлении.
LeshkinMaloy
0 / 0 / 0
Регистрация: 18.11.2009
Сообщений: 20
19.11.2009, 00:11  [ТС]     длина наименьшего отрезка #14
Цитата Сообщение от Golovastik Посмотреть сообщение
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 <iostream>
using namespace std;
 
int main()
{
    setlocale(0,"");
    int k;
    double min = 10000.0, max = -1000000, rez;
    cout<<"Введите кол-во отрезков -> ";
    cin>>k;
    double *dlina = new double[k];
    cout<<"Введите длину отрезка: \n";
    for(int i = 0; i < k; i++)
    {
    cout<<endl<<"\t-> ";
    cin>>dlina[k];
    if(min>dlina[k]) min = dlina[k];
    if(max<dlina[k]) max = dlina[k];
           rez = max - min;
    }
        cout<<"Минимальный отрезок = "<<min<<endl;
        cout<<"Максимальный отрезок = "<<max<<endl;
        cout<<"Найменьший отрезок = "<<rez<<endl;
    cin.ignore();
    cin.get();
}
Спасибо всем! Может у мя BC++ какой-то не такой одни ошибки выдаёт при компиляции

Добавлено через 9 минут
Цитата Сообщение от LeshkinMaloy Посмотреть сообщение
Спасибо всем! Может у мя BC++ какой-то не такой одни ошибки выдаёт при компиляции
function setlocale with no prototype

Добавлено через 16 минут
Цитата Сообщение от Golovastik Посмотреть сообщение
Код
а что означает "Function should return a value" какое-то значение функции насколько я разбираюсь в английском
Означает что Функция должна возвращать величину.
Если ты объявишь как const n=15;
Ты не сможешь, никак в программе поменять значение n. При попытку, прописать где-то в программе, к примеру n = 25, программа не скомпилится.
как же тогда избавиться от "Function should return a value"
LeshkinMaloy
0 / 0 / 0
Регистрация: 18.11.2009
Сообщений: 20
23.11.2009, 13:55  [ТС]     длина наименьшего отрезка #15
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
#include <iostream>
using namespace std;
 
int main()
{
        setlocale(0,"");
        int k;
        double min = 10000.0, max = -1000000, rez;
        cout<<"Введите кол-во отрезков -> ";
        cin>>k;
        double *dlina = new double[k];
        cout<<"Введите длину отрезка: \n";
        for(int i = 0; i < k; i++)
        {
        cout<<endl<<"\t-> ";
        cin>>dlina[k];
        if(min>dlina[k]) min = dlina[k];
        if(max<dlina[k]) max = dlina[k];
           rez = max - min;
        }
                cout<<"Минимальный отрезок = "<<min<<endl;
                cout<<"Максимальный отрезок = "<<max<<endl;
                cout<<"Найменьший отрезок = "<<rez<<endl;
        cin.ignore();
        cin.get();
Очень прошу, Кому не трудно, составте блок-схему алгоритма решения,пожалуйста!
Golovastik
 Аватар для Golovastik
11 / 11 / 0
Регистрация: 25.05.2009
Сообщений: 435
23.11.2009, 14:40     длина наименьшего отрезка #16
Это вообщем, дописать прямоугольники немного вначале и в конце нужно.
Миниатюры
длина наименьшего отрезка  
LeshkinMaloy
0 / 0 / 0
Регистрация: 18.11.2009
Сообщений: 20
23.11.2009, 14:52  [ТС]     длина наименьшего отрезка #17
Цитата Сообщение от Golovastik Посмотреть сообщение
Это вообщем, дописать прямоугольники немного вначале и в конце нужно.
Ооо,спасибо! оперативно! остальное доделаю. Спасибо!

Добавлено через 2 минуты
Golovastik,а с этим не могли бы помочь
LeshkinMaloy
0 / 0 / 0
Регистрация: 18.11.2009
Сообщений: 20
02.12.2009, 11:06  [ТС]     длина наименьшего отрезка #18
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
#include <iostream>
using namespace std;
 
int main()
{
        setlocale(0,"");
        int k;
        double min = 10000.0, max = -1000000, rez;
        cout<<"Введите кол-во отрезков -> ";
        cin>>k;
        double *dlina = new double[k];
        cout<<"Введите длину отрезка: \n";
        for(int i = 0; i < k; i++)
        {
        cout<<endl<<"\t-> ";
        cin>>dlina[k];
        if(min>dlina[k]) min = dlina[k];
        if(max<dlina[k]) max = dlina[k];
           rez = max - min;
        }
                cout<<"Минимальный отрезок = "<<min<<endl;
                cout<<"Максимальный отрезок = "<<max<<endl;
                cout<<"Найменьший отрезок = "<<rez<<endl;
        cin.ignore();
        cin.get();
Ещё вопрос: в задании же нужно найти длину наименьшего отрезка числовой оси МАССИВА,а в коде речи идёт о просто заданных пользователем числах,находит макс и мин и разницу этих чисел
LeshkinMaloy
0 / 0 / 0
Регистрация: 18.11.2009
Сообщений: 20
02.12.2009, 18:32  [ТС]     длина наименьшего отрезка #19
Как же с массивом быть?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.12.2009, 18:56     длина наименьшего отрезка
Еще ссылки по теме:

C++ Наибольшая длина отрезка
Дан номер единицы длины и длина отрезка L в этих единицах. Вывести длину данного отрезка в метрах C++
появилась загвоздка с функцией. нужно вывести на экран строку, сост. из звездочек. Длина строки-параметр функциииз звезд. длина строки - C++
C++ Длина отрезка задана в дюймах, перевести значение длины в метрическую систему
Вычисление наименьшего значения C++

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

Или воспользуйтесь поиском по форуму:
Лукас
4 / 4 / 1
Регистрация: 17.11.2009
Сообщений: 32
02.12.2009, 18:56     длина наименьшего отрезка #20
дык юзай код из комментария #4, с поправками из комментариев ## 8 и 9.
Yandex
Объявления
02.12.2009, 18:56     длина наименьшего отрезка
Ответ Создать тему
Опции темы

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