IPB

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Массивы
SnooP↑
сообщение 15.12.2010, 15:39
Сообщение #1


Студент
**

Группа: Продвинутые
Сообщений: 67
Регистрация: 29.9.2010
Город: Мосты
Учебное заведение: БГТУ (г. Минск)
Вы: студент



Здравствуйте. Скажите пожалуйста, что изменить, чтобы всё работало. Программа компилируется, но я не понял всех нюансов здачи. вот сама задача:

При выполнении работы используются статические массивы. Для организации
статических массивов с псевдопеременными границами необходимо объявить массив достаточно
большой длины. Затем пользователь вводит реальную длину массива (не больше N) и работает с
массивом той длины, которую он сам указал. Остальные элементы (хотя память под них и будет
выделена) не рассматриваются. При уменьшении или увеличении длины массива необходимо
изменять его реальную длину.
Составьте блок-схему алгоритма

Сформировать одномерный массив целых чисел, используя датчик случайных чисел (диапазон
от 0 до 99) и выполнить задание 2-мя вариантами (c использованием индексов и указателей).
Размер массива ввести с клавиатуры.
Удалить элементы, индексы которых кратны 3. Добавить после каждого отрицательного
элемента массива элемент со значением | m[ i-1 ]+1|.


Не понял что сделать с этим m, что за него взять? я написал i

Пока это 1 способ, но второй отличаться не будет почти.

Код
#include "stdafx.h"
# include <iostream>
#include <stdlib.h>
#include <math.h>
#include <time.h>

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
setlocale( LC_ALL,"Russian" );
    const int N = 1000;
// N - максимальный размер статического массива
int i; // индекс массива
int array_size; // переменная для хранения
//размера массива
int arr[N]; // целочисленный статический
//массив длины N
int rmin = 0, rmax = 99; //диапазон значений
//элементов массива
cout<<"Введите размер массива"<<endl;
cin >> array_size;
// Сгенерировать массив
srand((unsigned)time(NULL));
for(i = 0; i < array_size; i++)
{
arr[i] = (int)(((double)rand()/(double)RAND_MAX)*
(rmax-rmin)+rmin);
// или arr[i] = rand()%99;
cout<< "  " << arr[i];
}
{if (i/3==0)
cout <<" "<<endl;
}

{ if (i<0)
i*( i-1 )+1;
}
    return 0;
}
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Harch
сообщение 16.12.2010, 12:03
Сообщение #2


Ассистент
****

Группа: Активисты
Сообщений: 834
Регистрация: 21.10.2009
Город: Москва
Учебное заведение: МГУ



m[i-1] - элемент массива с номером i - 1.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Vahappaday
сообщение 16.12.2010, 13:23
Сообщение #3


Аспирант
***

Группа: Продвинутые
Сообщений: 334
Регистрация: 26.4.2009
Город: Липецк
Учебное заведение: ЛГТУ
Вы: студент



При таких границах (rmin, rmax) отрицательных чисел в массиве не будет.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Harch
сообщение 16.12.2010, 13:25
Сообщение #4


Ассистент
****

Группа: Активисты
Сообщений: 834
Регистрация: 21.10.2009
Город: Москва
Учебное заведение: МГУ



Да, не будет. А в чем вопрос тогда?

Vahappaday, прошу прощения, думал что это SnooP написал.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
SnooP↑
сообщение 27.12.2010, 17:04
Сообщение #5


Студент
**

Группа: Продвинутые
Сообщений: 67
Регистрация: 29.9.2010
Город: Мосты
Учебное заведение: БГТУ (г. Минск)
Вы: студент



Вот так есть отрицательные числа, но всё равно не работает программа. не подскажете?

Код

#include "stdafx.h"
# include <iostream>
#include <stdlib.h>
#include <math.h>
#include <time.h>

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
setlocale( LC_ALL,"Russian" );
    const int N = 1000;
// N - максимальный размер статического массива
int i; // индекс массива
int array_size; // переменная для хранения
//размера массива
int arr[N]; // целочисленный статический
//массив длины N
int rmin = 0, rmax = 99; //диапазон значений
//элементов массива
cout<<"Введите размер массива"<<endl;
cin >> array_size;
// Сгенерировать массив
srand((unsigned)time(NULL));
for(i = 0; i < array_size; i++)
{
arr[i] = (int)(((double)rand()/(double)RAND_MAX)*
(rmax-rmin)+rmin)/-7;
// или arr[i] = rand()%99;
cout<< "  " << arr[i];
}
{if (i/3==0)
cout <<" "<<endl;
}

{ if (i<0)
i*( i-1 )+1;
}
    return 0;
}
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия Сейчас: 29.5.2025, 4:35

Книжки в помощь: "Сборник заданий по высшей математике" Кузнецов Л.А., "Сборник заданий по высшей математике" Чудесенко В.Ф., "Индивидуальные задания по высшей математике" Рябушко А.П., и другие.




Зеркало сайта Решебник.Ру - reshebnik.org.ru