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

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

Войти
Регистрация
Восстановить пароль
 
Anna944
0 / 0 / 0
Регистрация: 31.03.2012
Сообщений: 14
#1

задачи на одномерный масссив - C++

04.04.2012, 15:19. Просмотров 383. Ответов 6
Метки нет (Все метки)

1. В массив A[N] занесены натуральные числа. Найти сумму тех
элементов, которые кратны данному К.
2. Дан массив действительных чисел, размерность которого N.
Подсчитать, сколько в нем отрицательных, положительных и нулевых
элементов.
Помогите пожалуйста решить в с++

 Комментарий модератора 
Одна задача - одна тема. Не нарушайте правила форума.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.04.2012, 15:19
Здравствуйте! Я подобрал для вас темы с ответами на вопрос задачи на одномерный масссив (C++):

Одномерный масссив. - C++
Помогите пожалуйста решить задачку: Рассчитать сумму положительных элементов одномерного массива. Заранее спасибо огромное за оказанную...

Задачи на одномерный массив - C++
1.За заданим роком і номером дня в році(від1 до365 або до366, якщо рік високосний) обчислити дату(число, місяць). Наприклад, за2012 61 і...

задачи в C++: Циклы. Одномерный массив - C++
Задачи нужно решить на Microsoft Visual C++! Циклы. 1.Дано натуральное число n. Переставить местами первую и последнюю цифры этого...

Функция не изменяет масссив - C++
Проблема в функции RemoveToRight Я проверял, вход в функцию есть, но что-то не правильно, функция не работает как нужно, числа в права не...

Затруднение с решением задачи на одномерный массив - C++
Здравствуйте! Дано задание: Массив содержит 7 действительных чисел. Вычислить сумму квадратов тех чисел, абсолютная величина которых...

Выделение памяти под масссив - C++
Как занести данные в двумерный массив с клавиатуры? пользователь должен сам ввести размерность

6
easybudda
Модератор
Эксперт CЭксперт С++
9663 / 5613 / 952
Регистрация: 25.07.2009
Сообщений: 10,776
04.04.2012, 16:09 #2
Цитата Сообщение от Anna944 Посмотреть сообщение
1. В массив A[N] занесены натуральные числа. Найти сумму тех
элементов, которые кратны данному К.
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
#include <iostream>
#include <numeric>
#include <algorithm>
#include <iterator>
 
struct AddIfMulBy {
    int multipler;
    AddIfMulBy(int m) : multipler(m) {}
    int operator () (const int & a, const int & b) { 
        return a + ( ( b % multipler ) ? 0 : b ); 
    }
};
 
int main(){
    const int SIZE(10);
    int arr[SIZE] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }, k;
    
    std::cout << "Array:" << std::endl;
    std::copy(arr, arr + SIZE, std::ostream_iterator<int>(std::cout, " "));
    std::cout << std::endl;
    
    while ( std::cout << "K = " && std::cin >> k )
        std::cout << "Sum of values multipled by K: " 
            << std::accumulate(arr, arr + SIZE, 0, AddIfMulBy(k)) 
            << std::endl;
    
    return 0;
}
1
a.n.o.n.i.m
137 / 137 / 15
Регистрация: 26.02.2011
Сообщений: 530
04.04.2012, 16:29 #3
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
30
31
32
#include <stdio.h>
#include <math.h>
#include <conio.h>
#include <stdlib.h>
 
int main ()
{
    int n,i,k,sum=0;
    while(!fflush(stdin)&&printf ("Vedite razmrnost massiva A (n) = ")&&!scanf ("%d",&n));
    int *A=(int*)malloc(n*sizeof(int));
    printf ("\nVvod massiva A\n\n");
    for (i=0; i<n; i++)
    {
         while(!fflush(stdin)&&printf ("Vedite A[%d] = ",i+1)&&!scanf("%d",&A[i]));
    }
    while(!fflush(stdin)&&printf ("Vedite kratnost (k) = ")&&!scanf ("%d",&k));
    system("cls");
    printf("Massiv A: ");
    for (i=0; i<n; i++)
    {
                 printf ("%d ", A[i]);
    }
    for (i=0; i<n; i++)
    {
                 if(A[i] % k == 0)
                 {
                         sum+=A[i];
                 }
    }
    printf ("\nSumma elementov kratnyh chislu k: %d",sum);
getch ();
}
Добавлено через 4 минуты
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
40
41
#include <stdio.h>
#include <math.h>
#include <conio.h>
#include <stdlib.h>
 
int main ()
{
    int n,i,k,otr=0,pol=0,nul=0;
    while(!fflush(stdin)&&printf ("Vedite razmrnost massiva A (n) = ")&&!scanf ("%d",&n));
    int *A=(int*)malloc(n*sizeof(int));
    printf ("\nVvod massiva A\n\n");
    for (i=0; i<n; i++)
    {
         while(!fflush(stdin)&&printf ("Vedite A[%d] = ",i+1)&&!scanf("%d",&A[i]));
    }
    system("cls");
    printf("Massiv A: ");
    for (i=0; i<n; i++)
    {
                 printf ("%d ", A[i]);
    }
    for (i=0; i<n; i++)
    {
                 if(A[i] < 0)
                 {
                         otr++;
                 }
                 if(A[i] > 0)
                 {
                         pol++;
                 }
                 if(A[i] == 0)
                 {
                         nul++;
                 }
    }
    printf ("\nOtricatelnyh: %d",otr);
    printf ("\nPolozitelnyh: %d",pol);
    printf ("\nRavny nuly: %d",nul);
getch ();
}
1
Serejke_qq
150 / 108 / 9
Регистрация: 06.07.2011
Сообщений: 224
Завершенные тесты: 2
04.04.2012, 16:29 #4
Цитата Сообщение от Anna944 Посмотреть сообщение

2. Дан массив действительных чисел, размерность которого N.
Подсчитать, сколько в нем отрицательных, положительных и нулевых
элементов.
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
#include <iostream>
#include <ctime>
#include <conio.h>
 
using namespace std;
 
template <class Type>   void RandomInput(Type * array, int n);
template <class Type>   void ShowArray(Type * array, int n);
 
int main()
{
    double * array;
    int n;
 
    cin >> n;
 
    array = new double[n];
 
    RandomInput(array,n);
    ShowArray(array,n);
 
    int a=0;    // меньше 0
    int b=0;    // больше 0
    int c=0;    // ноли
 
    for(int i=0; i<n; i++)
    {
        if(array[i] < 0) a++;
        else
            if(array[i] > 0) b++;
            else
                c++;
    }
 
    cout << "\nОтрецательных = " << a;
    cout << "\nПоложительных = " << b;
    cout << "\nНулевых = " << c;
 
    delete[] array;
 
    getch();
    return 0;
}
 
template <class Type>   void RandomInput(Type * array, int n) 
{
    srand(time(NULL));
    
    for(int i=0; i<n; i++)
        array[i] = rand()%50-10;
}
 
template <class Type>   void ShowArray(Type * array, int n) 
{
    for(int i=0; i<n; i++)
        cout << array[i] << " ";
}
a.n.o.n.i.m,
Цитата Сообщение от Anna944
Помогите пожалуйста решить в с++
1
a.n.o.n.i.m
137 / 137 / 15
Регистрация: 26.02.2011
Сообщений: 530
04.04.2012, 16:30 #5
Прям в одно время))
0
easybudda
Модератор
Эксперт CЭксперт С++
9663 / 5613 / 952
Регистрация: 25.07.2009
Сообщений: 10,776
04.04.2012, 16:51 #6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <functional>
#include <algorithm>
#include <iterator>
    
int main(){
    const int SIZE(10);
    int arr[SIZE] = { -1, 1, 0, -2, 2, 0, -3, 3, 0, 4 };
    
    std::cout << "Array:" << std::endl;
    std::copy(arr, arr + SIZE, std::ostream_iterator<int>(std::cout, " "));
    std::cout << "\nNegative values: "
        << std::count_if(arr, arr + SIZE, std::bind2nd(std::less<int>(), 0))
        << "\nZero values: "
        << std::count_if(arr, arr + SIZE, std::bind2nd(std::equal_to<int>(), 0))
        << "\nPositive values: "
        << std::count_if(arr, arr + SIZE, std::bind2nd(std::greater<int>(), 0))
        << std::endl;
    
    return 0;
}
1
a.n.o.n.i.m
137 / 137 / 15
Регистрация: 26.02.2011
Сообщений: 530
04.04.2012, 17:02 #7
Serejke_qq
1)Мой код из си не сложно переделать в с++ printf на cout поменять,там кода то строчек 40
2)Он более будет понятен новичку,там нет никаких хитростей все просто,в циклах
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.04.2012, 17:02
Привет! Вот еще темы с ответами:

Обработать одномерный массив согласно условию задачи - C++
1. Найти сумму отрицательных элементов массива. 2. Найти произведение элементов массива, расположенных между максимальным и минимальным...

Обработать одномерный массив согласно условию задачи - C++
В одномерном массиве, состоящем из n целых элементов, вычислить: 1) номер максимального элемента массива; 2) произведение элементов...

Обработать одномерный массив согласно условию задачи - C++
Доброго времени суток. Не могли бы вы мне помочь написать программу в С++, буду очень благодарен, вот задания : В одномерном массиве,...

Сформировать одномерный массив, следуя данному условию задачи - C++
Приветствую всех. Помогите, пожалуйста, разобраться с массивом в СИ. 2-й раз не принял преподаватель лабораторную: Сформировать...


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

Или воспользуйтесь поиском по форуму:
7
Yandex
Объявления
04.04.2012, 17:02
Ответ Создать тему
Опции темы

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