PDA

Показать полную графическую версию : Задача по массиву


demike
17-12-2011, 07:29
привет ... помогите решить задачку ..
Дан числовой массив A размера N. Все его положительные элементы поместить в начало массива B, а отрицательные элементы — в начало массива C. Подсчитать количество тех и других.
буду очень признателен ... зачет в понедельник ...если не решу ... меня вышвырнут отсюда

Drongo
17-12-2011, 12:12
demike, Для начала прочтите - Правила Форума (http://forum.oszone.net/announcement-21-187.html) по программированию, затем если вам будет нужно решение задачи, попытайтесь помочь нам своими размышлениями, что нужно сделать, как. Не нужно писать пока код, ограничтесь псевдокодом. Опишите как программа должна работать?зачет в понедельник ...если не решу ... меня вышвырнут отсюда »Это ваша учёба, если вам не интересна она, не зачем было поступать где преподают программирование. Ждём мыслей и идей, в противном случае тему перенесу в Сборник задач по программированию (http://forum.oszone.net/showthread.php?p=1816784)

Drongo
17-12-2011, 12:58
Дан числовой массив A размера N. Все его положительные элементы поместить в начало массива B, а отрицательные элементы — в начало массива C. Подсчитать количество тех и других. »Если разбить задачу на подзадачи, то получится примерно такой план решения:
1. Создаём массивы A, B, C с размером N
2. Создаём два счётчика для положительных и отрицательных значений
3. После нахождения положительного значеня присваиваем массиву B и увеличиваем счётчик положительных
4. После нахождения отрицательного значеня присваиваем массиву C и увеличиваем счётчик отрицательных
5. Вывести интересующую информацию на экран.

ferget
17-12-2011, 13:11
так вроде


#include <iostream>
using namespace std;

int main()
{
double* A;
double* B;
double* C;
int B_cnt=0, C_cnt=0;
int N;

cout << "Enter size of array: ";
cin >> N;

A = new double[N];
B = new double[N];
C = new double[N];

cout << "Input array elements\n";
for(int i = 0; i < N; i++)
cin >> A[i];

for(int i = 0; i < N; i++)
{
if (A[i] < 0)
B[B_cnt++] = A[i];
else
C[C_cnt++] = A[i];
}

cout << "\nArray B (" << B_cnt << ") ";
cout << "\nArray C (" << C_cnt << ") ";

cin.ignore().ignore();
return 0;
}




© OSzone.net 2001-2012