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

Вычислить минимальный по модулю элемент массива - C++

Восстановить пароль Регистрация
 
Pl@gue
0 / 0 / 0
Регистрация: 23.01.2012
Сообщений: 15
18.05.2012, 19:42     Вычислить минимальный по модулю элемент массива #1
В одномерном массиве, состоящем из п целых элементов, вычислить:
1) минимальный по модулю элемент массива;
2) сумму модулей элементов массива, расположенных после первого элемента, рав ного нулю.

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


Кто сможет чем помочь?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.05.2012, 19:42     Вычислить минимальный по модулю элемент массива
Посмотрите здесь:

Минимальный по модулю элемент массива C++
C++ Минимальный по модулю элемент массива
C++ В одномерном массиве вычислить минимальный по модулю элемент массива
C++ Программа вычисляет минимальный по модулю элемент массива
C++ В одномерном массиве, состоящем из n элементов, вычислить минимальный по модулю элемент массива
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4927 / 2670 / 243
Регистрация: 29.11.2010
Сообщений: 7,429
18.05.2012, 20:28     Вычислить минимальный по модулю элемент массива #2
Задачки плевые, что не получается?
daslex
1084 / 494 / 101
Регистрация: 02.08.2011
Сообщений: 2,408
19.05.2012, 00:15     Вычислить минимальный по модулю элемент массива #3
С+3.1

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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#include <stdlib.h>
#include <iostream.h>
#include <math.h>
 
//Преобразование исходного массива
void preobr(int *A,int N)
{
 int *Buf=new int[N];
 int i=0,j=0;
 
  for (i=0;i<N;i++)
   {
    if (!(i%2))
     {
      Buf[j]=A[i];
      j++;
     }
   }
 
   for (i=0;i<N;i++)
    {
     if (i%2)
      {
       Buf[j]=A[i];
       j++;
      }
    }
   memmove(A,Buf,N*sizeof(N));
 delete []Buf;
}
 
//Сумма элементов согласно заданию
int sum(int *A,int N)
 {
  int pos=0,sum=0;
  for (int i=0;i<N;i++)
   {
    if (A[i]!=0) {pos++;}
    else break;
   }
 
   for (i=pos;i<N;i++)
    {
     sum=abs(sum)+abs(A[i]);
    }
   return sum;
 }
 
//Минимальный по модулю элемент
int min_abs(int *A,int N)
{
 cout<<endl;
 int  min=A[0];
 for (int i=0;i<N;i++)
  {
   if (abs(min)>abs(A[i])) min=A[i];
  }
  return min;
}
 
//Создание массива
void Init(int *A,int N)
{
 srand(time(0));
 for (int i=0;i<N;i++)
 A[i]=rand()%(10)-5;
}
 
//Отображение массива
void Show(int *A,int N)
{
 for (int i=0;i<N;i++)
 cout<<A[i]<<" ";
 cout<<endl;
}
 
void main()
{
 
    system("cls");
      int N;
      cin>>N; //Число элементов в массиве
      int *A;
 
       A=new int[N];
      Init(A,N); //Создаем массив
      Show(A,N); //Показываем массив
      cout<<"Minimum "<<min_abs(A,N)<<endl; //Выводим минимальный по модулю элемент
      cout<<"Summa "<<sum(A,N)<<endl; //Выводим сумму по заданию
      preobr(A,N); //Преобразовываем массив
      Show(A,N); //Показываем преобразованный массив
       delete []A;
    system("PAUSE");
 return;
}
Pl@gue
0 / 0 / 0
Регистрация: 23.01.2012
Сообщений: 15
19.05.2012, 10:33  [ТС]     Вычислить минимальный по модулю элемент массива #4
Цитата Сообщение от MrGluck Посмотреть сообщение
Задачки плевые, что не получается?
просто я только начинаю учить С++, многое не понятно пока как делать. ((

Добавлено через 2 часа 20 минут
Цитата Сообщение от daslex Посмотреть сообщение
С+3.1

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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#include <stdlib.h>
#include <iostream.h>
#include <math.h>
 
//Преобразование исходного массива
void preobr(int *A,int N)
{
 int *Buf=new int[N];
 int i=0,j=0;
 
  for (i=0;i<N;i++)
   {
    if (!(i%2))
     {
      Buf[j]=A[i];
      j++;
     }
   }
 
   for (i=0;i<N;i++)
    {
     if (i%2)
      {
       Buf[j]=A[i];
       j++;
      }
    }
   memmove(A,Buf,N*sizeof(N));
 delete []Buf;
}
 
//Сумма элементов согласно заданию
int sum(int *A,int N)
 {
  int pos=0,sum=0;
  for (int i=0;i<N;i++)
   {
    if (A[i]!=0) {pos++;}
    else break;
   }
 
   for (i=pos;i<N;i++)
    {
     sum=abs(sum)+abs(A[i]);
    }
   return sum;
 }
 
//Минимальный по модулю элемент
int min_abs(int *A,int N)
{
 cout<<endl;
 int  min=A[0];
 for (int i=0;i<N;i++)
  {
   if (abs(min)>abs(A[i])) min=A[i];
  }
  return min;
}
 
//Создание массива
void Init(int *A,int N)
{
 srand(time(0));
 for (int i=0;i<N;i++)
 A[i]=rand()%(10)-5;
}
 
//Отображение массива
void Show(int *A,int N)
{
 for (int i=0;i<N;i++)
 cout<<A[i]<<" ";
 cout<<endl;
}
 
void main()
{
 
    system("cls");
      int N;
      cin>>N; //Число элементов в массиве
      int *A;
 
       A=new int[N];
      Init(A,N); //Создаем массив
      Show(A,N); //Показываем массив
      cout<<"Minimum "<<min_abs(A,N)<<endl; //Выводим минимальный по модулю элемент
      cout<<"Summa "<<sum(A,N)<<endl; //Выводим сумму по заданию
      preobr(A,N); //Преобразовываем массив
      Show(A,N); //Показываем преобразованный массив
       delete []A;
    system("PAUSE");
 return;
}
не идет пишет что ошибки
i необъявленный идентификатор
time идентификатор не найден
daslex
1084 / 494 / 101
Регистрация: 02.08.2011
Сообщений: 2,408
19.05.2012, 10:48     Вычислить минимальный по модулю элемент массива #5
Visual 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
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
#include "stdafx.h"
#include "iostream"
#include "time.h"
 
//Преобразование исходного массива
void preobr(int *A,int N)
{
 int *Buf=new int[N];
 int i=0,j=0;
 
  for (i=0;i<N;i++)
   {
    if (!(i%2))
     {
      Buf[j]=A[i];
      j++;
     }
   }
 
   for (i=0;i<N;i++)
    {
     if (i%2)
      {
       Buf[j]=A[i];
       j++;
      }
    }
   memmove(A,Buf,N*sizeof(N));
 delete []Buf;
}
 
//Сумма элементов согласно заданию
int sum(int *A,int N)
 {
    
  int pos=0,sum=0;
  for (int i=0;i<N;i++)
   {
    if (A[i]!=0) {pos++;}
    else break;
   }
 
   for (int i=pos;i<N;i++)
    {
     sum=abs(sum)+abs(A[i]);
    }
   return sum;
 }
 
//Минимальный по модулю элемент
int min_abs(int *A,int N)
{
    std::cout<<'\n';
 int  min=A[0];
 for (int i=0;i<N;i++)
  {
   if (abs(min)>abs(A[i])) min=A[i];
  }
  return min;
}
 
//Создание массива
void Init(int *A,int N)
{
 srand(time(0));
 for (int i=0;i<N;i++)
 A[i]=rand()%(10)-5;
}
 
//Отображение массива
void Show(int *A,int N)
{
 for (int i=0;i<N;i++)
     std::cout<<A[i]<<" ";
     std::cout<<'\n';
}
 
void main()
{
 
    system("cls");
      int N;
      std::cin>>N; //Число элементов в массиве
      int *A;
 
       A=new int[N];
      Init(A,N); //Создаем массив
      Show(A,N); //Показываем массив
      std::cout<<"Minimum "<<min_abs(A,N)<<'\n'; //Выводим минимальный по модулю элемент
      std::cout<<"Summa "<<sum(A,N)<<'\n'; //Выводим сумму по заданию
      preobr(A,N); //Преобразовываем массив
      Show(A,N); //Показываем преобразованный массив
       delete []A;
    system("PAUSE");
 return;
}
ошибки потому что в первом приведенном коде не используются пространства имен и небольшое различие в используемых библиотеках
Yandex
Объявления
19.05.2012, 10:48     Вычислить минимальный по модулю элемент массива
Ответ Создать тему
Опции темы

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