Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 5.00/39: Рейтинг темы: голосов - 39, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 25.09.2009
Сообщений: 28

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

25.09.2009, 15:00. Показов 8116. Ответов 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 натуральных чисел
Народ..помогите...несправляюсь...сразу говорю я не програмист..мне просто нужно ето сдать и забыть как страшный сон поетому не кидайтесь тапками и не расказывайте как класно ето все выцчить и сделать самому..просто помогите кто может? буду очень благодарен.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
25.09.2009, 15:00
Ответы с готовыми решениями:

Написать программу для работы с динамическим целочисленным двумерным массивом
Написать программу для работы с динамическим целочисленным двумерным массивом. Количество строк, столбцов и элементы массива вводятся с...

Программа для работы с целочисленным одномерным массивом
Здравствуйте , помогите пожалуйста Разработайте программу для работы с целочисленным одномерным массивом . Размерность массива и его...

Работа с одномерным целочисленным массивом в функции
Здравствуйте. Я написал несколько функций по работе с массивом. В dimentInt() я объявляю массив и передаю его в addNewElIDA, которая...

44
49 / 49 / 4
Регистрация: 21.05.2009
Сообщений: 156
25.09.2009, 17:37
а) Функции для инициализации массива случайными числами из диапазона (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];
}
1
47 / 47 / 3
Регистрация: 07.01.2009
Сообщений: 297
25.09.2009, 17:47
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;
}
1
49 / 49 / 4
Регистрация: 21.05.2009
Сообщений: 156
25.09.2009, 17:51
г) Функция, которая увеличивает в 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;
}
1
47 / 47 / 3
Регистрация: 07.01.2009
Сообщений: 297
25.09.2009, 18:04
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);
    }
}
1
0 / 0 / 0
Регистрация: 25.09.2009
Сообщений: 28
25.09.2009, 21:29  [ТС]
Спасибо вам большое....только у меня еще 1 дурацкий вопрос...да вот такой я нуб)...а как ето первое задание красиво в 1но обединить?
0
49 / 49 / 4
Регистрация: 21.05.2009
Сообщений: 156
25.09.2009, 21:39
Цитата Сообщение от laert22 Посмотреть сообщение
Спасибо вам большое....только у меня еще 1 дурацкий вопрос...да вот такой я нуб)...а как ето первое задание красиво в 1но обединить?
Создай txt файл. Скопируй функции туда. Разшерение на *.h измини.
В основном файле прогаммы пропишы #include<*.h> где *-ето имя библиотеки.
И можеш пользоваться функциями.
1
47 / 47 / 3
Регистрация: 07.01.2009
Сообщений: 297
25.09.2009, 21:45
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 функция случайного генерирования чисел будет все время одинаковую последовательность генерировать.Смотри мою версию. И первый раз я неправильно функцию назвал. Там же нужно найти минимальный элемент
1
49 / 49 / 4
Регистрация: 21.05.2009
Сообщений: 156
25.09.2009, 22:05
ЗЫ: Не копируй в фай дубликати функций. Ёрик делал некоторие функции что и я...

Добавлено через 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;
}
тут операторние дужки не обязательно ставить и ище в многих местах.
1
0 / 0 / 0
Регистрация: 25.09.2009
Сообщений: 28
25.09.2009, 23:44  [ТС]
Пасиб огромное пацаны без вас бы пропал) 2ую неделю задание несу) осталось осмыслить что вы мне написали)а то соединю чето не в попад она меня сйест

Еще раз ОГРОМНОЕ спасибо
0
47 / 47 / 3
Регистрация: 07.01.2009
Сообщений: 297
26.09.2009, 10:28
Цитата Сообщение от ZVolodumur Посмотреть сообщение
тут операторние дужки не обязательно ставить и ище в многих местах.
С таким оформлением кода тебе будут делать претензии. Если кому-то нужно будет добавить к-л. оператор,он должен будет писать новые скобки,если у нас там вложенный цикл,да плюс если еще с условием... Нужно будет искать,где они заканчиваются.Почитай как оформлять код
0
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
26.09.2009, 10:49
Цитата Сообщение от Ёрик Посмотреть сообщение
С таким оформлением кода тебе будут делать претензии. Если кому-то нужно будет добавить к-л. оператор,он должен будет писать новые скобки,если у нас там вложенный цикл,да плюс если еще с условием... Нужно будет искать,где они заканчиваются.Почитай как оформлять код
Ну знаешь... С таким подходом напиши в Microsoft или куда там еще, что они поставляют среды без готового кода всех нужных тебе программ и тебе приходится еще самостоятельно писать код. Какой смысл от скобок??? От этого программа будет быстрее работать? Лучше работать? А если будет код какой-то такой, что нужно много разных проверок при выполнении которых выполнять одну строку? Ты предлагаешь, что "А если..." то от нечего делать растягивать файл исходника с 20Кб до 40Кб только за счет этого "А если...". Это более чем глупое утверждение.
0
47 / 47 / 3
Регистрация: 07.01.2009
Сообщений: 297
26.09.2009, 11:37
Во-первых,от скобок он не растянется от 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;
}
0
Эксперт С++
 Аватар для odip
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
26.09.2009, 14:25
Always Uses Braces Form
Вот это правильно !
Я бы вообще из языка выкинул вариант когда без скобок писать можно !
Вот в Modula-2 например сделано лучше чем в PASCAL и C - там скобки всегда нужны и нет дурацкого begin.
0
0 / 0 / 0
Регистрация: 25.09.2009
Сообщений: 28
26.09.2009, 15:33  [ТС]
нарисовался вопрос

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

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

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

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

Добавлено через 1 минуту
Ну где у тебя *.cpp или *.c файл.
0
0 / 0 / 0
Регистрация: 25.09.2009
Сообщений: 28
26.09.2009, 15:46  [ТС]
нашел...еще вопросик...когда в етот файлик кидаеш функции ...их что просто как тут показано копипастом в кучу или надо както разделять...и #include namespace и т д писать или нет?)
0
49 / 49 / 4
Регистрация: 21.05.2009
Сообщений: 156
26.09.2009, 15:54
Цитата Сообщение от 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;
}
1
0 / 0 / 0
Регистрация: 25.09.2009
Сообщений: 28
26.09.2009, 15:55  [ТС]
уффф...в начало проги или в начало библиотеки?....прогу я начал так
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>
?
0
49 / 49 / 4
Регистрация: 21.05.2009
Сообщений: 156
26.09.2009, 15:59
Это в библиотеку
Цитата Сообщение от 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>
?
Да. Иначе работать небудет.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.09.2009, 15:59
Помогаю со студенческими работами здесь

Написать программу работы с одномерным массивом из 15 целых элементов для решения задач
Написать программу работы с одномерным массивом из 15 целых элементов для решения задач: 1) упорядочить при вводе элементы массива по...

Создать модуль для работы с целочисленным массивом
Создать модуль для работы с целочисленным массивом. Задача. Заданные одномерные массивы H, G и K упорядочить по убыванию. Определить,...

Написать библиотеку функций для работы с однонаправленным линейным списком
помогите дописать программу задания 1. Написать библиотеку функций для работы с однонаправленным линейным списком, данные в котором...

Написать библиотеку функций для работы с множествами отрезков числовой прямой
Срочно нужна помощь, заранее спасибо Написать библиотеку функций для работы с множествами отрезков числовой прямой. Множества...

Класс для работы с одномерным массивом
Помогите разобраться: Написать класс для работы с одномерным массивом. Реализовать конструктор, создающий массив заданной размерности и...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru