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

Массивы - C++

Восстановить пароль Регистрация
 
egoregor13
0 / 0 / 0
Регистрация: 17.09.2013
Сообщений: 13
08.10.2013, 15:37     Массивы #1
В массиве, состоящем из n вещественных элементов вычислить:
- сумму целых частей элементов массива, расположенных между первым и вторым положительным элементом

- количество элементов, дробная часть которых больше введённого числа k. |k|<1
Упорядочить элементы массива с четными номерами по возврастанию целой части

Совсем с массивами не дружу
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.10.2013, 15:37     Массивы
Посмотрите здесь:

массивы C++
C++ С++ массивы
индексные массивы и адресные массивы C++
C++ Массивы
C++ Массивы
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
reisal78
08.10.2013, 16:01
  #2

Не по теме:

Вы хотите получить готовый код, или подружиться с массивами?

egoregor13
0 / 0 / 0
Регистрация: 17.09.2013
Сообщений: 13
08.10.2013, 16:16  [ТС]     Массивы #3
Цитата Сообщение от reisal78 Посмотреть сообщение

Не по теме:

Вы хотите получить готовый код, или подружиться с массивами?

Я бы хотел посмотреть код и пытаться подружиться с массивами по этому коду
reisal78
 Аватар для reisal78
603 / 516 / 119
Регистрация: 28.04.2013
Сообщений: 1,451
08.10.2013, 17:18     Массивы #4
Цитата Сообщение от egoregor13 Посмотреть сообщение
Я бы хотел посмотреть код и пытаться подружиться с массивами по этому коду
Ок простейший пример создания и работы с массивом:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
      
using namespace std;
 
int main ()
{
    const int N = 3;
    float arr[N] = {23.32, 2.4, 4.23};
 
    for (int i = 0; i < N; i++)
    {
        cout << arr[i] << endl;
    }
    cout << endl << arr[2];
    cout << endl << arr[0];
    cout << endl << arr[1]
         << endl;
}

Не по теме:

Но я советую Вам, почитать о массивах в учебнике.

egoregor13
0 / 0 / 0
Регистрация: 17.09.2013
Сообщений: 13
08.10.2013, 17:34  [ТС]     Массивы #5
Цитата Сообщение от reisal78 Посмотреть сообщение
Ок простейший пример создания и работы с массивом:
Я читал, но всё равно не могу понять, как именно составить программу так, чтобы получилось то ,что от меня требуется
reisal78
 Аватар для reisal78
603 / 516 / 119
Регистрация: 28.04.2013
Сообщений: 1,451
08.10.2013, 17:43     Массивы #6
Ок, давайте решать "проблемы" по мере их появления.

Итак, беря за основу ту программу я написал выше, вы создали массив и заполнили его значениями.

Далее по заданию вам требуется
вычислить сумму целых частей элементов массива
.
Т.е если у вас например есть чиcло 2.13, вам нужно получить ее целую часть.
С этим справитесь?
egoregor13
0 / 0 / 0
Регистрация: 17.09.2013
Сообщений: 13
08.10.2013, 17:48  [ТС]     Массивы #7
Цитата Сообщение от reisal78 Посмотреть сообщение
Ок, давайте решать "проблемы" по мере их появления.
Всё, чему нас научили это сортировки пузырьком. И на этом всё. А потом дают подобные задания.
Выделить целую часть... Выделить целую часть смогу, это вроде не сложно
reisal78
 Аватар для reisal78
603 / 516 / 119
Регистрация: 28.04.2013
Сообщений: 1,451
08.10.2013, 20:22     Массивы #8
Цитата Сообщение от egoregor13 Посмотреть сообщение
Выделить целую часть... Выделить целую часть смогу, это вроде не сложно
Отлично!

Значит для выполнения первой части задания Вам надо:
-Создать переменную где вы будете хранить сумму
- сравнивать по очереди элемента массива с нулем.
если значение меньше 0, то сравниваем дальше если больше 0 то выделяем целую часть и прибавляем ее к той переменной где хранится сумма. И т.д пока не найдется следующее отрицательное значение элемента.
- как нашли второе отрицательное - выходим из цикла сравнения.
- Все, сумма целых частей у вас хранится в созданной Вами переменной.
egoregor13
0 / 0 / 0
Регистрация: 17.09.2013
Сообщений: 13
08.10.2013, 20:42  [ТС]     Массивы #9
Цитата Сообщение от reisal78 Посмотреть сообщение
Значит для выполнения первой части задания Вам надо:
-Создать переменную где вы будете хранить сумму
Тут всё просто, но дальше... хм... чувствую себя дико глупым
reisal78
 Аватар для reisal78
603 / 516 / 119
Регистрация: 28.04.2013
Сообщений: 1,451
08.10.2013, 20:54     Массивы #10
Пришлите код который у Вас получился на данный момент )
egoregor13
0 / 0 / 0
Регистрация: 17.09.2013
Сообщений: 13
09.10.2013, 17:31  [ТС]     Массивы #11
Цитата Сообщение от reisal78 Посмотреть сообщение
Пришлите код который у Вас получился на данный момент )
я только основу ввёл и всё. И ещё int sum=0 добавил и всё

Добавлено через 20 часов 19 минут
Будет лучше, если просто кто-нибудь напишет код, и я разберусь в нём. А если чего не пойму погуглю, либо тут спрошу
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.10.2013, 19:48     Массивы
Еще ссылки по теме:

C++ массивы
C++ Массивы

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

Или воспользуйтесь поиском по форуму:
newb_programmer
 Аватар для newb_programmer
237 / 237 / 19
Регистрация: 03.09.2011
Сообщений: 553
09.10.2013, 19:48     Массивы #12
egoregor13,
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
50
51
52
53
54
#include <cstdlib>
#include <iostream>
#include <cmath>
#include <time.h>
using namespace std;
template< class T >
void insertSort(T* a, int size); 
int main()
{
    srand(time(NULL));
    const int size=10;
    int i, sum=0,first=0,second,kol=0;
    double k;
    double arr[size];
    for(i=0;i<size;i++) {
        arr[i]=(rand()%20)*0.99-10;
        cout<<"arr["<<i<<"]= "<<arr[i]<<"\n";
    }
    for (i=0;i<size;i++) {
        if (arr[i]>0) 
            first=i;
        if  (arr[i]>0 && first>0) {
            second=i;
            break;
        }
    }
    for (i=first+1;i<second;i++)
        sum+=(int)arr[i];
    cout<<"Sum="<<sum<<"\n";
    cout<<"Enter k:\n";
    cin>>k;
    for (i=0;i<size;i++)
        if ( (arr[i]-(int)arr[i])>k )
            kol++;
    cout<<"Kol="<<kol<<"\n";
    insertSort(arr,size);
    for(i=0;i<size;i++) {
        cout<<"arr["<<i<<"]= "<<arr[i]<<"\n";
    }
    system("pause");
    return 0;
}
template< class T >
void insertSort(T* a, int size) 
{
    T tmp;
    for (int i = 2, j; i < size; i+=2) 
    {
        tmp = (int)a[i]; 
        for (j = i - 2; j >= 0 && (int)a[j] > tmp; j-=2) 
            a[j + 2] = a[j];   
        a[j + 2] = tmp;    
    }
}
Yandex
Объявления
09.10.2013, 19:48     Массивы
Ответ Создать тему
Опции темы

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