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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 32, средняя оценка - 4.97
laert22
0 / 0 / 0
Регистрация: 25.09.2009
Сообщений: 28
#1

Написать библиотеку функций для работы с одномерным целочисленным массивом - C++

25.09.2009, 15:00. Просмотров 4058. Ответов 44
Метки нет (Все метки)

неправильно оформленное задание
1
Написати бiблiотеку функцiй для роботи з одновимiрним цiлочисельним масивом
а)Функцii для iнiцiалiзацii масиву випадковими числами з дiапазону (0...50)
б) Функцiя для виводу масиву на екран
в)Функцiя яка знаходить мiнiмальне значення масиву
г) Функцiя яка збiльшуе в 2 рази елементи першоi половини масиву зменшуе в 2 рази елементи друго половини масиву
Всі функції повинні приймати в якості аргумента масив та його розмір
2
Написати функцію для обчислення квадрата числа.Вивести на екран квадрати перших N натуральних чисел

Перевод:
1 Написать библиотеку функций для работы с одномерным целочисленным массивом
а) Функции для инициализации массива случайными числами из диапазона (0...50)
б) Функция для вывода массива на экран
в) Функция какая находит минимальное значение массива
г) Функция, которая увеличивает в 2 раза элементы первой половины массива и уменьшает в 2 раза элементы второй половины массива
Все функции должны принимать в качестве аргумента массив и его размер
2 Написать функцию для вычисления квадрата числа.Вывести на экран квадраты первых N натуральных чисел
Народ..помогите...несправляюсь...сразу говорю я не програмист..мне просто нужно ето сдать и забыть как страшный сон поетому не кидайтесь тапками и не расказывайте как класно ето все выцчить и сделать самому..просто помогите кто может? буду очень благодарен.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.09.2009, 15:00     Написать библиотеку функций для работы с одномерным целочисленным массивом
Посмотрите здесь:
C++ Работа с одномерным целочисленным массивом в функции
C++ Написать библиотеку функций для работы с однонаправленным линейным списком
Функции для работы с одномерным динамическим массивом C++
Шаблон класса для работы с одномерным массивом C++
Определение класса для работы с одномерным динамическим массивом C++
C++ Написать функции для выполнения операций над одномерным массивом целых чисел
Программа работы с одномерным динамическим массивом C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ZVolodumur
49 / 49 / 3
Регистрация: 21.05.2009
Сообщений: 156
25.09.2009, 17:37     Написать библиотеку функций для работы с одномерным целочисленным массивом #2
а) Функции для инициализации массива случайными числами из диапазона (0...50)
C
1
2
3
4
5
void GetMas(int *a, int n)
{ int i;
for(i=0;i<n; i++)
{a[i]=random(50); printf("a[%d]=%d\n",i,a[i]);}
}
Добавлено через 1 минуту
б) Функция для вывода массива на экран
C
1
2
3
4
5
void PrntMas(int *a, int n)
{ int i;
for(i=0;i<n; i++)
printf("a[%d]=%d\n",i,a[i]);
}
Добавлено через 5 минут
в) Функция какая находит минимальное значение массива
C
1
2
3
4
5
6
7
int Min(int *a, int n)
{
int i,min=0;
for(i=0;i<n; i++)
if(a[min]>a[i]) min=i;
return a[min];
}
Ёрик
46 / 46 / 2
Регистрация: 07.01.2009
Сообщений: 298
25.09.2009, 17:47     Написать библиотеку функций для работы с одномерным целочисленным массивом #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
3 задание
int GetMax(int arr[],int n)
{
    int min = arr[0],i;
    for(i = 1; i < n ;++i)
    {
        if(arr[i] < min)
        {
            min = arr[i];
        }
    }
 
    return min;
}
ZVolodumur
49 / 49 / 3
Регистрация: 21.05.2009
Сообщений: 156
25.09.2009, 17:51     Написать библиотеку функций для работы с одномерным целочисленным массивом #4
г) Функция, которая увеличивает в 2 раза элементы первой половины массива и уменьшает в 2 раза элементы второй половины массива
C
1
2
3
4
5
6
void MN(int *a, int n)
{ int i;
for(i=0;i<n; i++)
if(i<n/2) a[i]*=2;
else a[i]/=2;
}
Ёрик
46 / 46 / 2
Регистрация: 07.01.2009
Сообщений: 298
25.09.2009, 18:04     Написать библиотеку функций для работы с одномерным целочисленным массивом #5
4 ЗАДАЧКА
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
void IncreaseDecrease(int *arr2,int n)
{
    int i;
    for(i = 0; i < n ;++i)
    {
        if(i < (n/2))
        {
            arr2[i] = 2*arr2[i];
        }
        else
        {
            arr2[i] = arr2[i]/2;
        }
    }
}
Последняя задачка:
C++
1
2
3
4
5
6
7
8
void Square(int n)
{
    int i;
    for(i = 1; i <= n ;++i)
    {
        printf("%d\n",i*i);
    }
}
laert22
0 / 0 / 0
Регистрация: 25.09.2009
Сообщений: 28
25.09.2009, 21:29  [ТС]     Написать библиотеку функций для работы с одномерным целочисленным массивом #6
Спасибо вам большое....только у меня еще 1 дурацкий вопрос...да вот такой я нуб)...а как ето первое задание красиво в 1но обединить?
ZVolodumur
49 / 49 / 3
Регистрация: 21.05.2009
Сообщений: 156
25.09.2009, 21:39     Написать библиотеку функций для работы с одномерным целочисленным массивом #7
Цитата Сообщение от laert22 Посмотреть сообщение
Спасибо вам большое....только у меня еще 1 дурацкий вопрос...да вот такой я нуб)...а как ето первое задание красиво в 1но обединить?
Создай txt файл. Скопируй функции туда. Разшерение на *.h измини.
В основном файле прогаммы пропишы #include<*.h> где *-ето имя библиотеки.
И можеш пользоваться функциями.
Ёрик
46 / 46 / 2
Регистрация: 07.01.2009
Сообщений: 298
25.09.2009, 21:45     Написать библиотеку функций для работы с одномерным целочисленным массивом #8
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
 
 
/* Finding the least number of the array */
int GetMin(int arr[],int n)
{
    int min = arr[0],i;
    for(i = 1; i < n ;++i)
    {
        if(arr[i] < min)
        {
            min = arr[i];
        }
    }
    return min;
}
 
/* Printing of the array */
void PrintArray(int arr[],int n)
{
    int i;
    for(i = 0; i < n ;++i)
    {
        printf("%d\t",arr[i]);
    }
}
 
 
/* Randomization of the array */
void RandomArray(int arr[],int n)
{
    int i;
 
    srand(time(0));
    
    rand();
 
    for(i = 0; i < n ;++i)
    {
        arr[i] = rand()%51;
    }
}
 
 
/*  Increasing the first part of the array and decreasing the last part of the array */
void IncreaseDecrease(int *arr,int n)
{
    int i;
    for(i = 0; i < n ;++i)
    {
        if(i < (n/2))
        {
            arr[i] = 2*arr[i];
        }
        else
        {
            arr[i] = arr[i]/2;
        }
    }
}
 
 
int main()
{
    const int n = 20;
    int arr[n] = {0};
    
    RandomArray(arr,n);
 
    printf("Array is: \n"); 
    PrintArray(arr,n);
    
    printf("The least number of the array is: %d\n",GetMin(arr,n));
 
    IncreaseDecrease(arr,n);
 
    printf("Modified array is: \n");
    PrintArray(arr,n);
 
}


Кстати,у ZVolodumur функция случайного генерирования чисел будет все время одинаковую последовательность генерировать.Смотри мою версию. И первый раз я неправильно функцию назвал. Там же нужно найти минимальный элемент
ZVolodumur
49 / 49 / 3
Регистрация: 21.05.2009
Сообщений: 156
25.09.2009, 22:05     Написать библиотеку функций для работы с одномерным целочисленным массивом #9
ЗЫ: Не копируй в фай дубликати функций. Ёрик делал некоторие функции что и я...

Добавлено через 1 минуту
Кстати,у ZVolodumur функция случайного генерирования чисел будет все время одинаковую последовательность генерировать.Смотри мою версию.
Нет не будет. я подключил randomize();

Добавлено через 3 минуты
Ой извиняюсь... недосмотрел )))
ВОТ:
C
1
2
3
4
5
6
void GetMas(int *a, int n)
{ int i;
randomize();
for(i=0;i<n; i++)
{a[i]=random(50); printf("a[%d]=%d\n",i,a[i]);}
}
Добавлено через 4 минуты
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
void GetMas(int *a, int n)
{ int i;
randomize();
for(i=0;i<n; i++)
{a[i]=random(50); printf("a[%d]=%d\n",i,a[i]);}
}
//---------------------------
void PrintMas(int *a, int n)
{ int i;
for(i=0;i<n; i++)
printf("a[%d]=%d\n",i,a[i]);
}
//---------------------------
int Min(int *a, int n)
{
int i,min=0;
for(i=0;i<n; i++)
if(a[min]>a[i]) min=i;
return a[min];
}
//---------------------------
void MN(int *a, int n)
{ int i;
for(i=0;i<n; i++)
if(i<n/2) a[i]*=2;
else a[i]/=2;
}
В файл скопируй.

Добавлено через 8 минут
Цитата Сообщение от Ёрик Посмотреть сообщение
for(i = 0; i < n ;++i)
{
arr[i] = rand()%51;
}
тут операторние дужки не обязательно ставить и ище в многих местах.
laert22
0 / 0 / 0
Регистрация: 25.09.2009
Сообщений: 28
25.09.2009, 23:44  [ТС]     Написать библиотеку функций для работы с одномерным целочисленным массивом #10
Пасиб огромное пацаны без вас бы пропал) 2ую неделю задание несу) осталось осмыслить что вы мне написали)а то соединю чето не в попад она меня сйест

Еще раз ОГРОМНОЕ спасибо
Ёрик
46 / 46 / 2
Регистрация: 07.01.2009
Сообщений: 298
26.09.2009, 10:28     Написать библиотеку функций для работы с одномерным целочисленным массивом #11
Цитата Сообщение от ZVolodumur Посмотреть сообщение
тут операторние дужки не обязательно ставить и ище в многих местах.
С таким оформлением кода тебе будут делать претензии. Если кому-то нужно будет добавить к-л. оператор,он должен будет писать новые скобки,если у нас там вложенный цикл,да плюс если еще с условием... Нужно будет искать,где они заканчиваются.Почитай как оформлять код
M128K145
Эксперт С++
8283 / 3502 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
26.09.2009, 10:49     Написать библиотеку функций для работы с одномерным целочисленным массивом #12
Цитата Сообщение от Ёрик Посмотреть сообщение
С таким оформлением кода тебе будут делать претензии. Если кому-то нужно будет добавить к-л. оператор,он должен будет писать новые скобки,если у нас там вложенный цикл,да плюс если еще с условием... Нужно будет искать,где они заканчиваются.Почитай как оформлять код
Ну знаешь... С таким подходом напиши в Microsoft или куда там еще, что они поставляют среды без готового кода всех нужных тебе программ и тебе приходится еще самостоятельно писать код. Какой смысл от скобок??? От этого программа будет быстрее работать? Лучше работать? А если будет код какой-то такой, что нужно много разных проверок при выполнении которых выполнять одну строку? Ты предлагаешь, что "А если..." то от нечего делать растягивать файл исходника с 20Кб до 40Кб только за счет этого "А если...". Это более чем глупое утверждение.
Ёрик
46 / 46 / 2
Регистрация: 07.01.2009
Сообщений: 298
26.09.2009, 11:37     Написать библиотеку функций для работы с одномерным целочисленным массивом #13
Во-первых,от скобок он не растянется от 20Кб до 40Кб.Это сколько нужно написать,чтобы так увеличился размер?Я говорил про оформление кода.Есть стандарт(C++ Coding Standard):

Always Uses Braces Form
All if, while and do statements require braces even if there is only a single statement within the braces.
For example:
C++
1
2
3
4
if (1 == somevalue)
{
   somevalue = 2;
}
odip
Эксперт С++
7155 / 3295 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
26.09.2009, 14:25     Написать библиотеку функций для работы с одномерным целочисленным массивом #14
Always Uses Braces Form
Вот это правильно !
Я бы вообще из языка выкинул вариант когда без скобок писать можно !
Вот в Modula-2 например сделано лучше чем в PASCAL и C - там скобки всегда нужны и нет дурацкого begin.
laert22
0 / 0 / 0
Регистрация: 25.09.2009
Сообщений: 28
26.09.2009, 15:33  [ТС]     Написать библиотеку функций для работы с одномерным целочисленным массивом #15
нарисовался вопрос

Создай txt файл. Скопируй функции туда. Разшерение на *.h измини.
В основном файле прогаммы пропишы #include<*.h> где *-ето имя библиотеки.
И можеш пользоваться функциями.

а куда етот файлик скинуть...я весь визуал С перелазил ненашел)куда его скинуть чтоб функции из библиотеки можно было вызывать?
ZVolodumur
49 / 49 / 3
Регистрация: 21.05.2009
Сообщений: 156
26.09.2009, 15:37     Написать библиотеку функций для работы с одномерным целочисленным массивом #16
Цитата Сообщение от laert22 Посмотреть сообщение
нарисовался вопрос

Создай txt файл. Скопируй функции туда. Разшерение на *.h измини.
В основном файле прогаммы пропишы #include<*.h> где *-ето имя библиотеки.
И можеш пользоваться функциями.

а куда етот файлик скинуть...я весь визуал С перелазил ненашел)куда его скинуть чтоб функции из библиотеки можно было вызывать?
Пишы вот так: #include "*.h" и кидай в папку с прогой.

Добавлено через 1 минуту
Ну где у тебя *.cpp или *.c файл.
laert22
0 / 0 / 0
Регистрация: 25.09.2009
Сообщений: 28
26.09.2009, 15:46  [ТС]     Написать библиотеку функций для работы с одномерным целочисленным массивом #17
нашел...еще вопросик...когда в етот файлик кидаеш функции ...их что просто как тут показано копипастом в кучу или надо както разделять...и #include namespace и т д писать или нет?)
ZVolodumur
49 / 49 / 3
Регистрация: 21.05.2009
Сообщений: 156
26.09.2009, 15:54     Написать библиотеку функций для работы с одномерным целочисленным массивом #18
Цитата Сообщение от laert22 Посмотреть сообщение
нашел...еще вопросик...когда в етот файлик кидаеш функции ...их что просто как тут показано копипастом в кучу или надо както разделять...и #include namespace и т д писать или нет?)
Нужно в Начало добавить
#include <stdlib.h>
#include <stdio.h>

И кидай всё в один файл

Добавлено через 1 минуту
Вот так:
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
#include <stdlib.h>
#include <stdio.h>
void GetMas(int *a, int n)
{ int i;
randomize();
for(i=0;i<n; i++)
{a[i]=random(50); printf("a[%d]=%d\n",i,a[i]);}
}
//---------------------------
void PrintMas(int *a, int n)
{ int i;
for(i=0;i<n; i++)
printf("a[%d]=%d\n",i,a[i]);
}
//---------------------------
int Min(int *a, int n)
{
int i,min=0;
for(i=0;i<n; i++)
if(a[min]>a[i]) min=i;
return a[min];
}
//---------------------------
void MN(int *a, int n)
{ int i;
for(i=0;i<n; i++)
if(i<n/2) a[i]*=2;
else a[i]/=2;
}
laert22
0 / 0 / 0
Регистрация: 25.09.2009
Сообщений: 28
26.09.2009, 15:55  [ТС]     Написать библиотеку функций для работы с одномерным целочисленным массивом #19
уффф...в начало проги или в начало библиотеки?....прогу я начал так
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
40
41
#include <iostream>
#include <DLLL.h>
using namespace std;
{
а в файл просто скинул все вот так
 
void GetMas(int *a, int n)
{ int i;
for(i=0;i<n; i++)
{a[i]=random(50); printf("a[%d]=%d\n",i,a[i]);}
}
 
void PrntMas(int *a, int n)
{ int i;
for(i=0;i<n; i++)
printf("a[%d]=%d\n",i,a[i]);
}
 
int Min(int *a, int n)
{
int i,min=0;
for(i=0;i<n; i++)
if(a[min]>a[i]) min=i;
return a[min];
}
 
void MN(int *a, int n)
{ int i;
for(i=0;i<n; i++)
if(i<n/2) a[i]*=2;
else a[i]/=2;
}
 
void Square(int n)
{
        int i;
        for(i = 1; i <= n ;++i)
        {
                printf("%d\n",i*i);
        }
}
будет правильно если в начало файла допишу
C++
1
2
#include <stdlib.h>
#include <stdio.h>
?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.09.2009, 15:59     Написать библиотеку функций для работы с одномерным целочисленным массивом
Еще ссылки по теме:
Реализовать функционал работы с одномерным динамическим массивом (добавление одного элемента в начало) C++
Определить структурированный тип, набор функций (в виде меню) для работы с массивом структур C++
C++ Написать функции для работы с динамическим массивом
Задача с целочисленным массивом C++

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

Или воспользуйтесь поиском по форуму:
ZVolodumur
49 / 49 / 3
Регистрация: 21.05.2009
Сообщений: 156
26.09.2009, 15:59     Написать библиотеку функций для работы с одномерным целочисленным массивом #20
Это в библиотеку
Цитата Сообщение от ZVolodumur Посмотреть сообщение
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
#include <stdlib.h>
#include <stdio.h>
void GetMas(int *a, int n)
{ int i;
randomize();
for(i=0;i<n; i++)
{a[i]=random(50); printf("a[%d]=%d\n",i,a[i]);}
}
//---------------------------
void PrintMas(int *a, int n)
{ int i;
for(i=0;i<n; i++)
printf("a[%d]=%d\n",i,a[i]);
}
//---------------------------
int Min(int *a, int n)
{
int i,min=0;
for(i=0;i<n; i++)
if(a[min]>a[i]) min=i;
return a[min];
}
//---------------------------
void MN(int *a, int n)
{ int i;
for(i=0;i<n; i++)
if(i<n/2) a[i]*=2;
else a[i]/=2;
}
Добавлено через 1 минуту
Цитата Сообщение от laert22 Посмотреть сообщение
будет правильно если в начало файла допишу
#include <stdlib.h>
#include <stdio.h>
?
Да. Иначе работать небудет.
Yandex
Объявления
26.09.2009, 15:59     Написать библиотеку функций для работы с одномерным целочисленным массивом
Ответ Создать тему
Опции темы

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