Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.85/13: Рейтинг темы: голосов - 13, средняя оценка - 4.85
0 / 0 / 0
Регистрация: 12.04.2010
Сообщений: 20
1

В массиве A из N элементов (N не больше 30) определить количество элементов, имеющих четные значения, и сумму этих элементов.

12.04.2010, 19:20. Показов 2398. Ответов 15
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
1. В массиве A из N элементов (N не больше 30) определить количество элементов, имеющих четные значения, и сумму этих элементов. Число N и значения элементов массива задаются вводом.
2. Задан массив А из 20 элементов. Поменять местами 1-й элемент с 11-м , 2-й с 12-м , 3-й с 13-м и т. д. Вывести исходный и полученный массивы. Элементы массива A должны быть случайными числами в диапазоне от 0 до 100.

Помогите пожалуйста , нужен код с++
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.04.2010, 19:20
Ответы с готовыми решениями:

В массиве определить количество элементов, имеющих четные значения, и сумму этих элементов
решить, используя указатели 1. В массиве A из N элементов определить количество элементов, имеющих...

Определить количество элементов, имеющих четные значения
Помогите решить бесталковому студенту, только начинаю разбираться в c+, не получается, желательно с...

Определить количество элементов в массиве, имеющих четные порядковые номера и являющимися нечетными числами.
Определить количество элементов в массиве, имеющих четные порядковые номера и являющимися нечетными...

Определить произведение элементов матрицы, имеющих четные значения
Помогите решить задачку: Задания на двумерные массивы Дан двумерный массив размерностью N x M...

15
1261 / 799 / 108
Регистрация: 16.09.2009
Сообщений: 2,010
12.04.2010, 19:43 2
1.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
#include <conio.h>
 
#define N 10
int main(){
int mas[N] = {1,2,3,4,5,6,7,8,9,9};
int count = 0, sum = 0 ;
int i;
      for ( i = 0 ; i < N ; i++ )
          if(mas[i]%2==0) { 
              count++;
              sum+=mas[i];              
          }
 
printf("count %2: %d",count);
printf("\n");
printf("sum %2: %d",sum);
printf("\n");
getch();
return 0;
}
0
0 / 0 / 0
Регистрация: 12.04.2010
Сообщений: 20
12.04.2010, 20:11  [ТС] 3
Спасибо) мне только не дает почему то написать ничего)) сразу выкидывает обратно в код останавливая программу)

Добавлено через 2 минуты
Аааа там и не должно вроде как ? только вот кол-во и сумму вроде неверно выдает((
0
7 / 7 / 3
Регистрация: 11.04.2010
Сообщений: 25
12.04.2010, 21:24 4
Цитата Сообщение от piOMEN Посмотреть сообщение
1. В массиве A из N элементов (N не больше 30) определить количество элементов, имеющих четные значения, и сумму этих элементов. Число N и значения элементов массива задаются вводом.
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
#include<iostream.h>
void main()
{ int perem=0,k,n,sum=0;
cout<<"vvedite koli4estvo elementov masiva: ";
cin>>n;
int*y=new int [n];
int*x=new int [n];
cout<<"Enter the array \n";
for (int i=1;i<=n; i++)
{cout<<"A["<<i<<"] = ";
cin>>x[i];}
cout<<"\nThe result is: \n";
for (i=1;i<=n;i++)
if (x[i]%2==0)
{perem++;
y[i]=x[i];
cout<<"A["<<perem<<"] = "<<y[i]<<"\n";}
k=perem;
cout<<"kovichestvo: "<<k;
for (i=1;i<=n;i++)
{sum+=y[i];}
cout<<"\nsumma = ";
cout<<sum;
}
0
0 / 0 / 0
Регистрация: 12.04.2010
Сообщений: 20
12.04.2010, 21:58  [ТС] 5
спасибо токо в этой строчке
for (i=1;i<=n;i++) - ошибка какая то (((
0
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
13.04.2010, 00:11 6
piOMEN, потому что в С-подобных языках нумерация начинается с 0, поэтому
C++
1
for (i = 0; i < n; ++i)
И так во всех строках где стоит такой фор
0
0 / 0 / 0
Регистрация: 12.04.2010
Сообщений: 20
13.04.2010, 00:26  [ТС] 7
спасибо огромное!!!

Добавлено через 10 минут
только все равно после cout<<"\nThe result is: \n";
ошибку выдает((((
0
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
13.04.2010, 00:47 8
piOMEN, когда говорите, что выдает ошибку - приводите текст ошибки
0
0 / 0 / 0
Регистрация: 12.04.2010
Сообщений: 20
13.04.2010, 01:09  [ТС] 9
Извиняюсь , вот такая вот ошибка
[C++ Error] Unit1.cpp(13): E2451 Undefined symbol 'i'
если ставлю перед " i " int , то запускается , но после ввода N и значений массивов консоль закрывается
0
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
13.04.2010, 01:27 10
piOMEN, объявите i сразу после void main()
0
0 / 0 / 0
Регистрация: 12.04.2010
Сообщений: 20
13.04.2010, 01:35  [ТС] 11
спасибо
0
Эксперт С++
2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
13.04.2010, 01:50 12
piOMEN, 2.
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
55
56
57
58
59
60
61
62
63
#include <iostream>
#include <ctime>
#include <cassert>
 
void initializeRandom() {
  srand(time(NULL));
}
 
int random(int min, int max) {
  return min + rand() % (max - min);
}
 
void fillRandom(int* arr, int size, int min, int max) {
  initializeRandom();
 
  for (int i = 0; i < size; ++i)
    arr[i] = random(min, max);
}
 
void swap(int& left, int &right) {
  int tmp   = left;
      left  = right;
      right = tmp;
}
 
void transform(int* arr, int size) {
  if (size % 2 != 0) {
    assert (size % 2 == 0);
    return;
  }
 
  int half = size / 2;
 
  for (int i = 0; i < half; ++i) 
    swap(arr[i], arr[i + half]);
}
 
void show (int* arr, int size) {
  for (int i = 0; i < size; ++i)
    std::cout << arr[i] << " ";
 
  std::cout << std::endl;
}
 
int main() {
  const int size      = 20;
  int       arr[size];
 
  const int min = 0;
  const int max = 100;
 
  fillRandom (arr, size, min, max + 1);
 
  std::cout << "Source array: " << std::endl;
  show(arr, size);
 
  transform(arr, size);
 
  std::cout << "Transformed array: " << std::endl;
  show(arr, size);
 
  return 0;
}
Проверяй.
1
0 / 0 / 0
Регистрация: 12.04.2010
Сообщений: 20
13.04.2010, 14:36  [ТС] 13
спасибо)) токо у меня вроде борланд портачит(
[C++ Error] Unit1.cpp(6): E2268 Call to undefined function 'time'
[C++ Error] Unit1.cpp(10): E2268 Call to undefined function 'rand'

на srand(time(NULL)); выдает (
0
0 / 0 / 0
Регистрация: 07.05.2010
Сообщений: 50
07.05.2010, 15:43 14
у меня такая же лаба, но задача тут с ошибкой по ходу, копирую код, дописывю переменную i, все запускается, но при вводе массива он совершает ошибку в сумме и все зависает к чертям, выключить можно только через диспечер задач(( я про первую задачу
0
0 / 0 / 0
Регистрация: 12.04.2010
Сообщений: 20
07.05.2010, 17:23  [ТС] 15
CyBOSSeR, у меня вот эту строчку srand(time(NULL)); черным не выделяет(((
0
Эксперт С++
2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
07.05.2010, 20:30 16
piOMEN, так попробуй:
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
55
56
57
58
59
60
61
62
63
#include <iostream>
#include <ctime>
#include <cassert>
 
void initializeRandom() {
  std::srand(std::time(NULL));
}
 
int random(int min, int max) {
  return min + std::rand() % (max - min);
}
 
void fillRandom(int* arr, int size, int min, int max) {
  initializeRandom();
 
  for (int i = 0; i < size; ++i)
    arr[i] = random(min, max);
}
 
void swap(int& left, int &right) {
  int tmp   = left;
      left  = right;
      right = tmp;
}
 
void transform(int* arr, int size) {
  if (size % 2 != 0) {
    assert (size % 2 == 0);
    return;
  }
 
  int half = size / 2;
 
  for (int i = 0; i < half; ++i) 
    swap(arr[i], arr[i + half]);
}
 
void show (int* arr, int size) {
  for (int i = 0; i < size; ++i)
    std::cout << arr[i] << " ";
 
  std::cout << std::endl;
}
 
int main() {
  const int size      = 20;
  int       arr[size];
 
  const int min = 0;
  const int max = 100;
 
  fillRandom (arr, size, min, max + 1);
 
  std::cout << "Source array: " << std::endl;
  show(arr, size);
 
  transform(arr, size);
 
  std::cout << "Transformed array: " << std::endl;
  show(arr, size);
 
  return 0;
}
1
07.05.2010, 20:30
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.05.2010, 20:30
Помогаю со студенческими работами здесь

Определить количество элементов в массиве, значения которых больше первого элемента
Задан массив, состоящий из 15 элементов вещественного типа. Определить количество элементов,...

Определить количество элементов в массиве, значения которых больше первого элемента
Задан массив, состоящий из 15 элементов вещественного типа. Определить количество элементов,...

Определить количество элементов массива, значения которых больше суммы соседних элементов
N=15 Определить количество элементов, значения которых больше суммы соседних элементов (предыдущего...

Определить количество элементов массива, значения которых больше СУММЫ соседних элементов
Дан одномерный массив из 15 элементов. Определить количество элементов, значения которых больше...

Определить количество элементов массива, значения которых больше суммы соседних элементов
Дан одномерный массив из 15 элементов. Определить количество элементов, значения которых больше...

Определить количество элементов, значение которых больше среднего значения всех элементов массива
Определить количество элементов, значение которых больше среднего значения всех элементов массива.


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru