Форум программистов, компьютерный форум CyberForum.ru

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

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

Описать логическую функцию equal (l1,l2), проверяющую на равенство списки l1 и l2 C++
C++ Описать функцию, определяющую сумму элементов массива
Массивы. Описать функцию f(a, n, p), определяющую, упорядочены ли строго по убыванию элементы в целочисленном массиве a из n элементов... C++
C++ Односвязный линейный список (Описать тип данных, который отвечает такому представлению многочленов, и создать логическую функцию)
C++ На С++ Билдер 6 (Описать функцию, располагающую столбцы целочисленного двумерного массива в порядке убывания элементов k-ой строки)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
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 Посмотреть сообщение
которые находятся от первого нулевого значения.
Я его включил в диапазон. Вам ведь не после первого нужен.
Mycola
22 / 12 / 13
Регистрация: 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 Посмотреть сообщение
Необходимо описать функцию случайной генерации элементов массива, а за тем логическую функцию, которая в новом массиве получит все значения исходного, которые находятся от первого нулевого значения. Нужно решить задачу используя указатели.

То есть нужно создать новый масив без нулевого елемента, или с того же масива удалить первый елемент?
Роман555
0 / 0 / 0
Регистрация: 13.06.2013
Сообщений: 5
14.06.2013, 18:42  [ТС]     Задачка на массивы (описать функцию случайной генерации элементов массива, а за тем логическую функцию) #4
Нужно новый массив. Спасибо вам огромное!!! =)
Yandex
Объявления
14.06.2013, 18:42     Задачка на массивы (описать функцию случайной генерации элементов массива, а за тем логическую функцию)
Ответ Создать тему
Опции темы

Текущее время: 10:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru