Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
Роман555
0 / 0 / 0
Регистрация: 13.06.2013
Сообщений: 5
#1

Задачка на массивы (описать функцию случайной генерации элементов массива, а за тем логическую функцию)

14.06.2013, 17:39. Просмотров 530. Ответов 3
Метки нет (Все метки)

Необходимо описать функцию случайной генерации элементов массива, а за тем логическую функцию, которая в новом массиве получит все значения исходного, которые находятся от первого нулевого значения. Нужно решить задачу используя указатели.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.06.2013, 17:39
Ответы с готовыми решениями:

Описать рекурсивную логическую функцию
Описать рекурсивную логическую функцию Simm(S,l, J), проверяющую, является ли...

Описать логическую функцию equal (l1,l2), проверяющую на равенство списки l1 и l2
Добрый день, прошу помощи в написании кода (работаю в QT Creator 2.0.1)....

Массивы. Описать функцию f(a, n, p), определяющую, упорядочены ли строго по убыванию элементы в целочисленном массиве a из n элементов...
Помогите пожалуйста с задачей! Описать функцию f(a, n, p), определяющую,...

Рекурсивно и нерекурсивно описать логическую функцию, проверяющую на равенство два бинарных дерева
страшно каюсь, не подумайте что я ленивый тюлень и мне не хочется вникать в...

Описать функцию, определяющую сумму элементов массива
Описать функцию, определяющую сумму элементов массива

3
go
Эксперт С++
3637 / 1369 / 243
Регистрация: 16.04.2009
Сообщений: 4,527
14.06.2013, 18:23 #2
C++
1
2
3
4
5
6
template<typename T>
std::vector<T> newArr(const std::vector<T>& vec)
{
    return std::vector<T> (std::find(std::begin(vec), std::end(vec), 0), 
        std::end(vec));
}
Добавлено через 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
#include <iostream>
#include <vector>
#include <algorithm>
#include <iterator>
 
template<typename T>
std::vector<T> newArr(const std::vector<T>& vec)
{
    return std::vector<T> (std::find(std::begin(vec), std::end(vec), 0), 
        std::end(vec));
}
 
template<typename T>
void print(const std::vector<T>& arr)
{
    std::copy(std::begin(arr), std::end(arr), std::ostream_iterator<T>(
        std::cout, " "));
    std::cout << std::endl;
}
 
int main()
{
    std::vector<int> arr1 = {
        1, 2, 3, 0, 0, 1
    };
    
    std::vector<int> arr2 = {
        1, 2, 3, 4, 5, 0
    };
    
    std::vector<int> arr3 = {
        1, 2, 3
    };
    
    print(newArr(arr1));
    print(newArr(arr2));
    print(newArr(arr3));
    
}
http://ideone.com/RVzyur
Код
0 0 1 
0
Добавлено через 2 минуты
Цитата Сообщение от Роман555 Посмотреть сообщение
которые находятся от первого нулевого значения.
Я его включил в диапазон. Вам ведь не после первого нужен.
1
Mycola
23 / 13 / 47
Регистрация: 23.03.2013
Сообщений: 157
14.06.2013, 18:34 #3
Цитата Сообщение от Роман555 Посмотреть сообщение
Необходимо описать функцию случайной генерации элементов массива, а за тем логическую функцию, которая в новом массиве получит все значения исходного, которые находятся от первого нулевого значения. Нужно решить задачу используя указатели.
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
#include "stdafx.h"
#include  "time.h"
#include "iostream"
using namespace std;
 
void Random(int* arr, unsigned int n)
{
   srand(time(0));
 
   unsigned int i;
   for (i=0; i<n; i++)
   {
      arr[i] = rand()%9 + 1;
   }
}
//----------------------------------------------//
void Print(int* arr, unsigned int n)
{
   unsigned int i;
   for (i=0; i<n; i++)
   {
      cout<<arr[i]<<" ";
   }
   cout<<endl;
}
//----------------------------------------------//
int main()
{
   unsigned int n;
   cout<<"array size: ";
   cin>>n;
   int* arr = (int*) malloc(sizeof(int) * n);
   Random(arr, n);
   Print(arr, n);
   system("pause");
}
тут задача не доделанная но работа с указателями пример как делать, и одномерным уже сам сможешь дополнить код)

Добавлено через 3 минуты
Цитата Сообщение от Роман555 Посмотреть сообщение
Необходимо описать функцию случайной генерации элементов массива, а за тем логическую функцию, которая в новом массиве получит все значения исходного, которые находятся от первого нулевого значения. Нужно решить задачу используя указатели.

То есть нужно создать новый масив без нулевого елемента, или с того же масива удалить первый елемент?
1
Роман555
0 / 0 / 0
Регистрация: 13.06.2013
Сообщений: 5
14.06.2013, 18:42  [ТС] #4
Нужно новый массив. Спасибо вам огромное!!! =)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.06.2013, 18:42

Описать функцию, меняющую порядок элементов вещественного массива
Описать функцию типа void Hill(A, N), меняющую порядок элементов вещественного...

Описать функцию, которая найдет количество отрицательных элементов массива
посмотрите, пожалуйста программу к задаче: Описать функцию, которая найдет...

Односвязный линейный список (Описать тип данных, который отвечает такому представлению многочленов, и создать логическую функцию)
Многочлен P(x)=anxn+an-1xn-1+...+a1x+a0 можно представить в виде списка . Если...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru