Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.87/15: Рейтинг темы: голосов - 15, средняя оценка - 4.87
0 / 0 / 0
Регистрация: 13.04.2010
Сообщений: 3

массивы в C++

13.04.2010, 18:22. Показов 3313. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет всем!=) Ребятки, дорогие, помогите плиз с задачей по C++, а то я сама уже задолбалась((((

В одномерном массиве состоящем из n веществ элементов,вычислить:
1)Cумму элементов массива с нечетными номерами
2)сумму элементов массива, расположенных между первым и последним отрицательными элементами
И нужно еще сжать массив, удалив из него все элементы, модуль которых не превышает 1, освободившиеся в конце массива элементы заполнить нулями....оой, ну вот такая воть задача...

вот что есть у меня
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include "stdafx.h" 
#include <iostream> 
#define _USE_MATH_DEFINES 
#include <math.h> 
using namespace std; 
 
int _tmain(int argc, _TCHAR* argv[]) 
{ 
int lim , i = 0, n, sum_nechNom, Sum_otr; (sum_nechNom - сумма элементов массива с нечетными номерами,Sum_otr -сумму элементов массива, расположенных между первым и последним отрицательными элементами )
cout << "Enter value n: ";\\  как я понимаю - ввод количества элементов массива 
cin >> n; 
 
double mas[100], sum_nechNom= 0, Sum_otr = 0 ; 
do { 
cin >> mas[i];\\ ввод самих элементов массива 
//i++; 
} while (++i < n); 
 
i = 0;sum_nechNom=Sum_otr=mas[0]; 
do {
Ну вот(((и то, я не уверенна что это правильно)...помогите пожалуйста, буду очень признательна.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.04.2010, 18:22
Ответы с готовыми решениями:

Даны массивы A(8), F(8),Q(8). Сформировать массивы С(8), каждый элемент которого вычисляется по формуле
uses crt; type mas=array of integer; var A,F,Q,C:mas; i,s:integer; begin clrscr; writeln('Массив первый:'); for i:=1...

Упорядочить массивы по по убыванию, потом соединить массивы в один упорядоченный массив
Начала писать, запуталась Даны два одномерных массива состоящие из 10 целых чисел. Упорядочить массивы по по убыванию, потом соединить...

Даны массивы а и b. Получить новые массивы a и b, элементы которых вычисляются по правилу: ai=bi, bi= -ai
Даны массивы а и b, состоящие из n-элементов каждый. Получить новые массивы a и b, элементы которых вычисляются по правилу: ai=bi, bi=...

12
0 / 0 / 0
Регистрация: 13.04.2010
Сообщений: 19
13.04.2010, 19:49
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
srand(time(NULL));
for(int i=0;i<100;i++)
{
mas[i]=rand()%50-50;
cout<<mas[i]<<"\t";               //это всё генератор случайных чисел для быстрого заполнения массива
}
int summ=0;             //сумма нечётных чисел
for(int i=0;i<100;i++)
{
if(mas[i]%2==0) continue;
else summ+=mas[i];
}
cout<<summ;
int a=0,b=0,summ2=0;
for(int i=mas[0]; ;i++)      //сумму отрицательных элементов между"-""-"
{
if(mas[i]<0)
{
 a=i;
break;
}
else continue;
}
for(int i=mas[100-1]; ;i--)
{
if(mas[i]<0)
{
 b=i;
break;
}
else continue;
}
for(int i=a+1;i<b;i++)
{
summ2+=mas[i];
}
cout<<mas2;
Что-то тип того...по идее должно работать,но я сам начинающий..В последнюю часть задачи не въехал(

Добавлено через 46 секунд
Лишних скобочек понаставлял(
0
221 / 135 / 48
Регистрация: 12.04.2010
Сообщений: 248
13.04.2010, 20: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
#include "stdafx.h" 
#include <iostream> 
#define _USE_MATH_DEFINES 
#include <math.h> 
using namespace std; 
 
int _tmain(int argc, _TCHAR* argv[]) 
{ 
int lim , i = 0, n, sum_nechNom, Sum_otr; //(sum_nechNom - сумма элементов массива с нечетными номерами,Sum_otr -сумму элементов массива, расположенных между первым и последним отрицательными элементами )
cout << "Enter value n: ";// как я понимаю - ввод количества элементов массива 
cin >> n; 
 
double *mas, sum_nechNom= 0, Sum_otr = 0 ; 
mas = new double[n];
do { 
      cin >> mas[i++];// ввод самих элементов массива  
} while (i < n); 
 
i = 0;sum_nechNom = Sum_otr = 0; 
int bi=-1,ei=-1;
for(i = 0;i < n;i++) {
     if(mas[i] < 0 && bi == -1) bi = i;
     if(mas[i] < 0) ei = i;
     if(i%2 != 0) sum_nechNom += mas[i];
}
if(ei > bi && ei != -1 && bi != -1)
for(i = bi;i <= ei;i++)
{
     Sum_otr += mas[i];
}
int c=0;
for(i=0;i < n;i++)
{
     if(fabs(mas[i]) > 1) mas[c++] = mas[i];
}
for(i=c;i<n;i++) mas[i]=0;
 
cout>>Sum_nechNom>>endl;
cout>>Sum_otr>>endl;
}
0
0 / 0 / 0
Регистрация: 13.04.2010
Сообщений: 3
13.04.2010, 20:30  [ТС]
Uggway,Giggs131 - очень вам благодарна, спасибо большое что отозвались!

Но пока, к сожалению не получается запустить.

Giggs131, я вроде убрала лишние скобки но написано что есть 1на ошибка - fatal error C1010: непредвиденный конец файла во время поиска предкомпилированного заголовка. Возможно, вы забыли добавить директиву "#include "stdafx.h"" в источник.

Uggway в вашем коде определяется 4 ошибки - error C2371: sum_nechNom: переопределение; различные базовые типы
error C2371: Sum_otr: переопределение; различные базовые типы
error C2065: Sum_nechNom: необъявленный идентификатор
error C2088: >>: недопустимо для class

Может это я туплю, и что то не так делаю...Но вам друзья, я в любом случае, очень признательна!!
А то вообще никто из знакомых, даже вникать не хотят...
0
0 / 0 / 0
Регистрация: 13.04.2010
Сообщений: 19
13.04.2010, 21:17
Попробуй так,ага=)?

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
#include<iostream>
#include<time.h>
using namespace std;
int main()
{
    setlocale(LC_ALL,"Russian");
    srand((unsigned)time(NULL));
    const int size=10;
    int mas[size];
    int summ=0,summ2=0,a=0,b=0;
    cout<<"Наш массив:\n\n";
    for(int i=0;i<size;i++)
    {
    mas[i]=rand()%25-10;
    cout<<mas[i]<<"\t";
    }
    system("pause");
    for(int i=0;i<size;i++)
    {
    if(mas[i]%2==0) continue;
    else summ+=mas[i];
    }
    cout<<"\nСумма нечётных чисел = "<<summ<<"\n\n";
    system("pause");
    for(int i=0;i<size;i++)
    {
    if(mas[i]<0)
    {
     a=i;
    break;
    }
    else continue;
    }
    for(int i=size-1;i>=0;i--)
    {
    if(mas[i]<0)
    {
    b=i;
    break;
    }
    else continue;
    }
    for(int i=a+1;i<b;i++)
    {
    summ2+=mas[i];
    }
    cout<<"\n\nПервое отрицательное число = "<<mas[a]<<"\nВторое отрицательное число = "<<mas[b]<<"\nСумма чисел между ними = "<<summ2<<"\n\n";
    system("pause");
    system("cls");
    puts("Пока!\n\n\n");
}
Добавлено через 1 минуту
Надо было директиву time.h
И вообще я там бред понаписывал...Зашёл сделал всё в компиляторе)
0
Эксперт С++
 Аватар для CyBOSSeR
2348 / 1721 / 149
Регистрация: 06.03.2009
Сообщений: 3,675
13.04.2010, 21:28
Цитата Сообщение от Анюта1989 Посмотреть сообщение
непредвиденный конец файла во время поиска предкомпилированного заголовка. Возможно, вы забыли добавить директиву "#include "stdafx.h"" в источник.
Прочитайте внимательно и добавьте необходимую директиву в начало исходного файла, либо создавайте пустой проект.
1. Cумму элементов массива с нечетными номерами.
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
#include <iostream>
#include <ctime>
 
void fillRandom(int* arr, int size) {
  srand(time(NULL));
 
  for (int i = 0; i < size; ++i)
    arr[i] = rand();
}
 
int oddSum(const int* arr, int size) {
  int result = 0;
 
  for (int i = 0; i < size; ++i)
    if (i % 2 == 0)
      result += arr[i];
 
  return result;
}
 
int main() {
  int size;
 
  std::cout << "Enter size of array: ";
  std::cin >> size;
 
  int* arr = new int[size];
 
  fillRandom(arr, size);
 
  std::cout << "Sum of odd: " << oddSum(arr, size) << std::endl;
 
  return 0;
}
0
0 / 0 / 0
Регистрация: 13.04.2010
Сообщений: 19
13.04.2010, 21:31
Сразу возникает вопрос...А на ваш взгляд,она знает,что такое функции и указатели???
0
Эксперт С++
 Аватар для CyBOSSeR
2348 / 1721 / 149
Регистрация: 06.03.2009
Сообщений: 3,675
13.04.2010, 21:35
Цитата Сообщение от Giggs131 Посмотреть сообщение
Сразу возникает вопрос...А на ваш взгляд,она знает,что такое функции и указатели???
Нет. И давайте не будем изучать того, чего не знаем и вернемся в пещеры есть сырое мясо, так?
0
0 / 0 / 0
Регистрация: 13.04.2010
Сообщений: 19
13.04.2010, 21:52
Хм....А это идея!
Но всё таки лучше так:всему своё время....
0
13.04.2010, 22:24

Не по теме:

Giggs131:
Так про указатели.
Всё что мне известно это 4 байта позволяющие адресовать любую ячейку памяти,
по простому закону информатики: 2^32. все рассчитано, и зачитано.

0
13.04.2010, 22:32

Не по теме:

Genius Ignat, есть ведь еще и 64-рязрядные системы. Поэтому размер указателя не всегда равен 4 байтам.

1
13.04.2010, 22:43

Не по теме:

Это я уточнять не стал.
Спасибо что напомнил...
Раз 64 бит значит 8 байт, главное смысл указателя указывать на ячейку памяти(Хранить её адрес).
Главное это выразить идею что(это) и с чем его жуют, а архитектурные параметры, сути дела
в вопросе шо це та ке указатель не играют, ну больше ячеек можно адресовать если 8 байт,

Анюта1989 если тебе интересно можешь почитать что за я тут накропал.

0
0 / 0 / 0
Регистрация: 13.04.2010
Сообщений: 3
13.04.2010, 23:39  [ТС]
Спасибо всем!=))))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
13.04.2010, 23:39
Помогаю со студенческими работами здесь

Табулирование функции и поиск данных. Одномерные массивы. Двумерные массивы
Вычислить сумму первых четырех отрицательных элементов. В соответствии с п. 5.16 правил &quot;Запрещено создавать темы с множеством...

Массивы. Циклические алгоритмы (Заполнить массивы случайными числами, лежащими в интервале 0 до 100)
Доброго дня, уважаемые форумчане, помогите пожалуйста решить задание. Заполнить массивы случайными числами, лежащими в интервале 0 до...

Указатели и массивы. Индексация с помощью указателей. Передача массивов в функции. Динамические массивы (обработка матриц)
Для каждого элемента , bij, i= 1,...,n , j=1,...,n определяется свой многоугольник местонахождением соответствующего элемента aij (см....

Файлы. Компоненты - массивы чисел. Переформировать файл, где сначала идут массивы с положительными макс. элементами
Здравствуйте!! я пишу такую задачу: нужно написать две программы, одна из них создает файл, где компоненты - массивы вещ. чисел; ...

Структуры, массивы, указатели, динамические массивы структур
Помогите с решением задачи (прикрепляю условие). Заранее спасибо.


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определенном условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru