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

Динамические массивы - C++

Восстановить пароль Регистрация
 
Цветик
3 / 1 / 1
Регистрация: 13.10.2010
Сообщений: 42
22.11.2010, 06:52     Динамические массивы #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
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
int main (void)
{
   int i,n,j;
   int *mas;
   int *mas1;
   int max=0;
   clrscr();
   cout<<"Vvedite chislo elementov v massive";
   cin>>n;
   mas=new int[n];
   mas1=new int[n];
   randomize();
  
   for(i=0;i<n;i++)
{
   *(mas+i)=rand()%10;
 
 
if(*(mas+i) >max)
{
   max=*(mas+i);
   if(*(mas+i)==max){ *(mas+i)=*(mas(i+1);
}
 
}
 
}
   cout<<"mas=";
   for(i=0; i<n; i++)
   cout << *(mas+i);
   cout<<endl<<"max="<<max;
   delete[]mas;
   getch();
   return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.11.2010, 06:52     Динамические массивы
Посмотрите здесь:

C++ динамические массивы ?
C++ Динамические массивы
Динамические массивы C++
C++ Динамические массивы
C++ Динамические массивы
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
22.11.2010, 09:12     Динамические массивы #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
#include<iostream.h>
#include<conio.h>
#include <stdlib.h>
#include <time.h>
 
int main (void)
{
    srand( time( NULL ) );
 
int i,n,j;
int *mas;
 
int max=0;
cout<<"Vvedite chislo elementov v massive";
cin>>n;
mas=new int[n];
for(i=0;i<n;i++)
{
*(mas+i)=rand()%10;
if(max<*(mas+i)) max=*(mas+i);
}
cout<<"mas=";
for(i=0;i<n;i++)
    cout<<*(mas+i)<<" ";
 
for(i=0;i<n;i++)
    if(*(mas+i)==max)
    {
        for(j=i; j<n-1; j++)
            *(mas+j)=*(mas+j+1);
        n--;
    }
cout<<endl<<"mas=";
for(i=0; i<n; i++)
cout << *(mas+i)<<" ";
cout<<endl<<"max="<<max<<endl;
delete[]mas;
getch();
return 0; 
}
grrrrr
 Аватар для grrrrr
45 / 45 / 7
Регистрация: 21.04.2009
Сообщений: 265
22.11.2010, 10:09     Динамические массивы #3
valeriikozlov, скажите пожалуйста, запись
C++
1
*(mas+j)
эквивалентна
C++
1
mas[j]
?
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
22.11.2010, 10:45     Динамические массивы #4
grrrrr, да
Цветик
3 / 1 / 1
Регистрация: 13.10.2010
Сообщений: 42
22.11.2010, 11:11  [ТС]     Динамические массивы #5
Цитата Сообщение от valeriikozlov Посмотреть сообщение
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<iostream.h>
#include<conio.h>
#include <stdlib.h>
#include <time.h>
 
int main (void)
{
    srand( time( NULL ) );
 
int i,n,j;
int *mas;
 
int max=0;
cout<<"Vvedite chislo elementov v massive";
cin>>n;
mas=new int[n];
for(i=0;i<n;i++)
{
*(mas+i)=rand()%10;
if(max<*(mas+i)) max=*(mas+i);
}
cout<<"mas=";
for(i=0;i<n;i++)
    cout<<*(mas+i)<<" ";
 
for(i=0;i<n;i++)
    if(*(mas+i)==max)
    {
        for(j=i; j<n-1; j++)
            *(mas+j)=*(mas+j+1);
        n--;
    }
cout<<endl<<"mas=";
for(i=0; i<n; i++)
cout << *(mas+i)<<" ";
cout<<endl<<"max="<<max<<endl;
delete[]mas;
getch();
return 0; 
}
Спасибо большое=)
Yandex
Объявления
22.11.2010, 11:11     Динамические массивы
Ответ Создать тему
Опции темы

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