Помощь - Поиск - Пользователи - Календарь
Полная версия: Массивы > Информатика / Программирование
Образовательный студенческий форум > Другие дисциплины > Информатика / Программирование
SnooP↑
Здравствуйте. Скажите пожалуйста, что изменить, чтобы всё работало. Программа компилируется, но я не понял всех нюансов здачи. вот сама задача:

При выполнении работы используются статические массивы. Для организации
статических массивов с псевдопеременными границами необходимо объявить массив достаточно
большой длины. Затем пользователь вводит реальную длину массива (не больше 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
m[i-1] - элемент массива с номером i - 1.
Vahappaday
При таких границах (rmin, rmax) отрицательных чисел в массиве не будет.
Harch
Да, не будет. А в чем вопрос тогда?

Vahappaday, прошу прощения, думал что это SnooP написал.
SnooP↑
Вот так есть отрицательные числа, но всё равно не работает программа. не подскажете?

Код

#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;
}
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Русская версия Invision Power Board © 2001-2024 Invision Power Services, Inc.