Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.11.2010, 19:26   #1
Цветик
Пользователь
 
Регистрация: 12.10.2010
Сообщений: 21
По умолчанию Динамические массивы

Вывести в отдельный массив элементы, меньшие заданного числа А.

Код:
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
int main (void)
{
   int i,a,n,k;
   int *mas;
   int *mas1;
   clrscr();
   cout<<"Vvedite chislo elementov v massive";
   cin>>n;
   cout<<"Vvedite chislo";
   cin>>a;
   k=n;
   mas1=new int[k];
   mas=new int[n];
   randomize();
   for(i=0;i<n;i++)
{
   *(mas+i)=rand()%10;
   if( *(mas+i)<a ) mas1+=*(mas+i);
}

   cout<<"mas="<<mas<<endl<<"mas1="<<*mas1;
   getch();
   return 0;
}

Вроде и выводит но не так как нужно=(

Последний раз редактировалось Carbon; 07.11.2010 в 20:34.
Цветик вне форума Ответить с цитированием
Старый 07.11.2010, 19:37   #2
Syuf
Форумчанин
 
Аватар для Syuf
 
Регистрация: 02.02.2010
Сообщений: 599
По умолчанию

Цитата:
mas1=new int[k];
mas=new int[n];
randomize();
for(i=0;i<n;i++)
{
*(mas+i)=rand()%10;
if( *(mas+i)<a ) mas1+=*(mas+i);
}

cout<<"mas="<<mas<<endl<<"mas1="<<* mas1;
Вот от сюда поехали странности. Я бы сделал так:
Код:
int pos = 0;
mas = new int[n];
mas1 = new int[n];
for(i=0; i<n; i++)
{
      mas[i] = rand()%10;
      if(mas[i] < a)
            mas1[pos++] = mas[i];
}

// Печать
cout << "mas: ";
for(i=0; i<n; i++)
      cout << mas[i];
cout << endl << "mas1: ";
for(i=0; i<pos; i++)
      cout << mas1[i];
cout << endl;
getch();
Кстати, зачем вам k?
"Лишь то читается легко, что написано с трудом; что в час написано, то в час и позабыто."

Последний раз редактировалось Syuf; 07.11.2010 в 19:40.
Syuf вне форума Ответить с цитированием
Старый 07.11.2010, 20:02   #3
Цветик
Пользователь
 
Регистрация: 12.10.2010
Сообщений: 21
По умолчанию

Цитата:
Сообщение от Syuf Посмотреть сообщение
Кстати, зачем вам k?
Честно сейчас поняла что она как бы ни к чему, но хотелось чтобы разные переменные для этих двух массивов были=)
Цветик вне форума Ответить с цитированием
Старый 07.11.2010, 20:12   #4
Цветик
Пользователь
 
Регистрация: 12.10.2010
Сообщений: 21
По умолчанию

Цитата:
Сообщение от Syuf Посмотреть сообщение
Вот от сюда поехали странности. Я бы сделал так:
Код:
int pos = 0;
mas = new int[n];
mas1 = new int[n];
for(i=0; i<n; i++)
{
      mas[i] = rand()%10;
      if(mas[i] < a)
            mas1[pos++] = mas[i];
}

// Печать
cout << "mas: ";
for(i=0; i<n; i++)
      cout << mas[i];
cout << endl << "mas1: ";
for(i=0; i<pos; i++)
      cout << mas1[i];
cout << endl;
getch();
Syuf, нужно использовать обращение к элементам *(mas+i)
Цветик вне форума Ответить с цитированием
Старый 07.11.2010, 20:28   #5
Syuf
Форумчанин
 
Аватар для Syuf
 
Регистрация: 02.02.2010
Сообщений: 599
По умолчанию

Ну, просто замените обращание.
Код:
int pos = 0;
mas = new int[n];
mas1 = new int[n];
for(i=0; i<n; i++)
{
      *(mas+i) = rand()%10;
      if(*(mas+i) < a)
            *(mas1+pos) = *(mas+i)}

// Печать
cout << "mas: ";
for(i=0; i<n; i++)
      cout << *(mas+i);
cout << endl << "mas1: ";
for(i=0; i<pos; i++) // Размер массива mas1, т.е. k 
     cout << *(mas1+i);
cout << endl;
getch();
"Лишь то читается легко, что написано с трудом; что в час написано, то в час и позабыто."
Syuf вне форума Ответить с цитированием
Старый 07.11.2010, 20:35   #6
Цветик
Пользователь
 
Регистрация: 12.10.2010
Сообщений: 21
По умолчанию

Syuf, спасибо вам=) я все там подправила и получилось=)
Цветик вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамические массивы [ICQ] Помощь студентам 3 20.02.2015 17:31
Динамические массивы с++ maxsept Общие вопросы C/C++ 2 27.10.2010 20:16
Динамические массивы и массивы варианты N@stya Помощь студентам 0 11.06.2010 21:09
Динамические массивы в С Ol'ga Фриланс 6 08.06.2010 10:50
Динамические массивы Matr1x Общие вопросы C/C++ 5 07.12.2009 13:38