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

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

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

Задача на одномерный массив - C++

18.01.2012, 12:31. Просмотров 1262. Ответов 22
Метки нет (Все метки)

Дан одномерный массив из 100 элементов, состоящий из случайных вещественных чисел в диапазоне от -55 до 16. Вывести в порядке невозрастания (убывания) те отрицательные элементы этого массива, индекс которых — нечетное число.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.01.2012, 12:31     Задача на одномерный массив
Посмотрите здесь:

Задача на одномерный массив - C++
Дана задача: "Лесенка" Вова стоит перед лесенкой из N ступеней. На каждой из ступеней написаны произвольные целые числа. Первым шагом...

Задача на одномерный массив - C++
Здаствуйте. Помогите решить задачу. Надо сформировать одномерный массив целых чисел, используя генератор случайных чисел. Уничтожить...

Задача на одномерный массив - C++
Дан одномерный массив из 100 элементов, состоящий из случайных вещественных чисел в диапазоне от 4 до 16. Вывести в порядке убывания те...

Задача на одномерный массив) - C++
В одномерном масиве, состоящем из n вещественных элементов, вычислить: 1) номер минимального по модулю элемента масива; 2)...

задача на с++( одномерный массив) - C++
помогите пожалуйста разобраться с задачей нужно сформировать массив с по следующему принципу:сi = {tgi2, если i нечетное, или i2, если i...

задача по C++( одномерный массив) - C++
В одномерном массиве, состоящем из п вещественных элементов, вычислить: • сумму отрицательных элементов массива; • произведение...

ЗАДАЧА НА ОДНОМЕРНЫЙ МАССИВ - C++
Дано N действительных случайных чисел в диапазоне от 2 до 10. Определить, какое из них на числовой оси лежит ближе к целому числу. как...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
K1m
9 / 9 / 1
Регистрация: 02.01.2012
Сообщений: 167
18.01.2012, 12:54     Задача на одномерный массив #2
Ну как то так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
main()
{
float a[99], b[99];
//тут будет ввод массива
int j=0;
for (int i=0; i<=99; i++)
{
    if ((a[i]<0)&&(i%2!=0))
    {
         b[j]=a[i];
         j++;
    }
}
for (int i=0; i<j; i++)
{
   cout << b[i] << endl;
}
}
soon
2540 / 1305 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
18.01.2012, 13:07     Задача на одномерный массив #3
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>
#include <vector>
#include <algorithm>
#include <ctime>
#include <cstdlib>
#include <iterator>
#include <functional>
 
int main()
{
    std::srand(std::time(nullptr));
    const int size = 10;
    std::vector<int> v(size);
    std::generate(v.begin(), v.end(), [] { return std::rand() % 71 - 55; });
    std::copy(v.begin(), v.end(), std::ostream_iterator<int>(std::cout, " "));
    std::cout << std::endl;
    std::vector<int> result;
    for(int i = 0; i < size; i += 2)
        if(v.at(i) < 0)
            result.push_back(v.at(i));
    std::sort(result.begin(), result.end(), std::greater<int>());
    std::copy(result.begin(), result.end(), std::ostream_iterator<int>(std::cout, " "));
    std::cout << std::endl;
    return 0;
}
http://liveworkspace.org/code/ccf36d...9130c816b5d8e1
kravam
быдлокодер
1693 / 880 / 44
Регистрация: 04.06.2008
Сообщений: 5,438
18.01.2012, 13:24     Задача на одномерный массив #4
soon, какой у тебя компилятор? А то у меня на 14-ю строчку ругается
Dekio
Фрилансер
Эксперт С++
5837 / 1218 / 214
Регистрация: 23.11.2010
Сообщений: 3,378
Записей в блоге: 1
18.01.2012, 13:30     Задача на одномерный массив #5
kravam, там все нормально, стандарт 11
kravam
быдлокодер
1693 / 880 / 44
Регистрация: 04.06.2008
Сообщений: 5,438
18.01.2012, 13:47     Задача на одномерный массив #6
Я не говорю, что ненормально. Фактически мой ворос заключался в том, какой компилятор отвечает стандарту. На всякий случай, у меня

C++
1
2
3
4
5
6
7
8
9
E:\Dev-Cpp_nomingw\bin>g++ -v
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=e:/dev-cpp_nomingw/bin/../libexec/gcc/mingw32/4.6.1/lto-wrapper.exe
Target: mingw32
Configured with: ../gcc-4.6.1/configure --enable-languages=c,c++,fortran,objc,obj-c++ --disable-sjlj-exceptions --with-dwarf2 --enable-shared --enable-libgomp -
-disable-win32-registry --enable-libstdcxx-debug --enable-version-specific-runtime-libs --build=mingw32 --prefix=/mingw
Thread model: win32
gcc version 4.6.1 (GCC)
От 18 ноября прошлого года
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
18.01.2012, 13:54     Задача на одномерный массив #7
Цитата Сообщение от kravam Посмотреть сообщение
какой компилятор отвечает стандарту.
Например, этот частично поддерживает C++11 mingw-4.6.2+boost-1.48.0
kravam
быдлокодер
1693 / 880 / 44
Регистрация: 04.06.2008
Сообщений: 5,438
18.01.2012, 14:04     Задача на одномерный массив #8
Я сколько не тыкал в подпись niXmanу, попадаю на страницу с кракозябрами
K1m
9 / 9 / 1
Регистрация: 02.01.2012
Сообщений: 167
18.01.2012, 14:11     Задача на одномерный массив #9
Блин, я забыл упорядочить.
rangerx
1932 / 1541 / 141
Регистрация: 31.05.2009
Сообщений: 2,911
18.01.2012, 15:08     Задача на одномерный массив #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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
#define N 100
 
//-------------
 
double rand_float(double low, double high)
{
   return (high - low) * (double)rand() / RAND_MAX + low;
}
 
//-------------
int cmp(const void* p1, const void* p2)
{
    double a = *(const double*)p1;
    double b = *(const double*)p2;
 
    if(a < b) return -1;
    if(a > b) return 1;
    return 0;
}
 
 
int main()
{
    int i, j;
    double a[N];
    double b[N];
 
    srand(time(NULL));
    for(i = 0; i < N; ++i)
    {
        a[i] = rand_float(-55.0, 16.0);
        printf("[%d]: %f\n", i, a[i]);
    }
 
    j = 0;
    for(i = 1; i < N; i+= 2)
        if(a[i] < 0.0) b[j++] = a[i];
 
    printf("-----------------------\n");
    qsort(b, j, sizeof(double), cmp);
    for(i = 0; i < j; ++i)
        printf("[%d]: %f\n", i, b[i]);
 
    return 0;
}
soon
2540 / 1305 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
18.01.2012, 15:42     Задача на одномерный массив #11
kravam,
g++
Bash
1
2
3
4
5
soon@bt:~$ g++ --version
g++ (GCC) 4.7.0 20111129 (experimental)
Copyright (C) 2011 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Не по теме:

Судя по таблице, поддержка лямбда началась с 4.5.

kravam
быдлокодер
1693 / 880 / 44
Регистрация: 04.06.2008
Сообщений: 5,438
18.01.2012, 16:44     Задача на одномерный массив #12
А командную строку можно?
soon
2540 / 1305 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
18.01.2012, 16:50     Задача на одномерный массив #13
Цитата Сообщение от kravam Посмотреть сообщение
А командную строку можно?
Имели в виду
команду
Bash
1
g++ -std=c++0x main.cpp -o main
?
Sesame
0 / 0 / 0
Регистрация: 27.09.2011
Сообщений: 9
19.01.2012, 23:39  [ТС]     Задача на одномерный массив #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
#include "stdafx.h"
#include"iostream"
#include"stdlib.h"
#include"ctime"
#include"stdio.h"
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    int a=-55, b=16, i, j=0, q=100;
float arr[100], mass[100]; 
//объявление массива
for ( int i=0; i<q; i++)
{
    arr[i]= rand()/float(RAND_MAX)*(a-b)+b;
}
for(i=0;i<q;i++)
    printf(" %2.2f", arr[i]);
//выделение нечетных и отрицательных
int j=0;
for (int i=0; i<=99; i++)
{
    if ((arr[i]<0)&&(i%2!=0))
    {
         mass[j]=arr[i];
         j++;
    }
}
for (int i=0; i<j; i++)
{
   printf("%2.2f", mass[j]);
}
 
getchar();
    return 0;
}
Объявленный массив впорядке, а как начинаю выводить "mass[j]" то он выдает первое значение -107374176.00 а остальные 1.00 В чем проблема?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.01.2012, 00:10     Задача на одномерный массив
Еще ссылки по теме:

Задача по С++ на одномерный массив - C++
Написать программу которая выводит сумму четных чисел от2 до 20... с помощью одномерного массива!!!!

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

Задача на одномерный массив (сортировка) - C++
Помоги тебе решить задачу, пожалуйста. Дан одномерный массив из N элементов. Не заводя дополнительного массива отсортировать данный...

задача про одномерный массив - C++
Формулировка. Определите второй (по значению) наибольший элемент одномерного массива A(M). Формат входных данных. и т.д. Элементы...

Задача на тип char и одномерный массив - C++
Доброго времени суток. Есть задача, требующая вывести только строчные русские буквы, входящие в данный текст из 60 литер. Решено...


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

Или воспользуйтесь поиском по форуму:
NoMasters
Псевдослучайный
1747 / 1090 / 71
Регистрация: 13.09.2011
Сообщений: 3,120
20.01.2012, 00:10     Задача на одномерный массив #15
Там повторное объявление j... Но в целом вроде работает.
Yandex
Объявления
20.01.2012, 00:10     Задача на одномерный массив
Ответ Создать тему
Опции темы

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