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

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

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

массивы - C++

13.12.2009, 14:23. Просмотров 745. Ответов 12
Метки нет (Все метки)

Привет всем) мне для зачета по информатике нужно решить 3 задачи на массивы)
помогите пожалуйста ...
Вот сами задачи:

1) Вычислить сумму модулей элементов однородного массива расположенных после первого отрицательного элемента.
2) Преобразовать одномерный массив таким образом, чтобы в начале располагались все элементы равные нулю, а потом все остальные.
3) В целочисленной квадратной матрице определить номер строки, в которой находится самая длинная серия одинаковых элементов.

нужно написать программу для их решения на вижуал Си ++

PS заранее спасибо за помошь)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.12.2009, 14:23     массивы
Посмотрите здесь:

C++ Попадание точки. Массивы чисел. Массивы записей.
Указатели и массивы. Индексация с помощью указателей. Передача массивов в функции. Динамические массивы (обработка матриц) C++
Динамические массивы и функции. Динамические массивы. C++
C++ Динамические массивы структур;Классы. Класс массивы структур;Классы. Класс динамического массива структур.
индексные массивы и адресные массивы C++
массивы указателей,указатели на массивы C++
C++ массивы указателей,указатели на массивы
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Darky
Быдлокодер
507 / 294 / 45
Регистрация: 22.11.2009
Сообщений: 892
Завершенные тесты: 1
13.12.2009, 14:33     массивы #2
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
#include <iostream>
#include <math.h>
int main (void)
{
  int i,n=0,otr=0,io=0,flag=0,sum=0;
  int A[255];
  cout<<"Vvedite kol-vo elementov: ";
  cin>>n;
    for (i=0;i<n;i++)
    {
      cout<<"Vvedite A["<<i<<"]: ";
      cin>>A[i];
        if (A[i]<0&&flag==0)
        {
          otr=A[i];
          io=i;
          flag++;
        }
    }
    for (io++;io<n;io++)
    {
      sum+=fabs(A[io]);
    }
  cout<<"Summa |elementov| posle pervogo < 0: "<<sum;
}
winmaks
0 / 0 / 0
Регистрация: 13.12.2009
Сообщений: 19
13.12.2009, 14:38  [ТС]     массивы #3
спасиб) ток что такое: count? мне нужно на вижул Си++
Darky
Быдлокодер
507 / 294 / 45
Регистрация: 22.11.2009
Сообщений: 892
Завершенные тесты: 1
13.12.2009, 14:39     массивы #4
cout = printf()
cin = scanf()
winmaks
0 / 0 / 0
Регистрация: 13.12.2009
Сообщений: 19
13.12.2009, 14:41  [ТС]     массивы #5
все понял) можно еще 2 задачки?)
Darky
Быдлокодер
507 / 294 / 45
Регистрация: 22.11.2009
Сообщений: 892
Завершенные тесты: 1
13.12.2009, 14:50     массивы #6
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
#include <stdio.h>
int main(void)
{
  int i,j,k=0,n=0;
  int A[255],B[255];
  printf("Vvedite kol-vo elementov massiva: ");
  scanf("%d",&n);
    for (i=0,j=0;i<n;i++)
    {
      printf("Vvedite A[%d]:",i);
      scanf("%d",&A[i]);
        if (A[i]==0)
        {
          B[j]=0;
          j++;
        }
    }
    k=j;
    for (i=0;i<n;i++)
    {
      if (A[i]!=0)
      {
        B[k]=A[i];
        k++;
      }
 
    }
    for (i=0;i<n;i++)
      printf("%d, ",B[i]);
}
Rififi
2336 / 1051 / 44
Регистрация: 03.05.2009
Сообщений: 2,656
13.12.2009, 14:53     массивы #7
winmaks,

2) Преобразовать одномерный массив таким образом, чтобы в начале располагались все элементы равные нулю, а потом все остальные.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <algorithm>
#include <functional>
#include <iterator>
#include <locale>
#include <iostream>
 
int main()
{
    setlocale(LC_ALL, "");
    int arr[] = {0,1,-5,2,0,-4,3,4,0,5,6,-3,0,7,8,-2,9,10};
    const size_t N = sizeof(arr) / sizeof(arr[0]);
 
    std::partition(arr, arr+N, std::bind2nd(std::equal_to<int>(), 0));
 
    typedef std::ostream_iterator<int> O;
    std::copy(arr, arr+N, O(std::cout, " "));
 
    return 0;
}
Вывод результата: http://codepad.org/v5zOB1f8
winmaks
0 / 0 / 0
Регистрация: 13.12.2009
Сообщений: 19
13.12.2009, 15:02  [ТС]     массивы #8
спасиб конечно но я в начале написал что мне нужно в вижул Си++

Добавлено через 6 минут
Цитата Сообщение от Rififi Посмотреть сообщение
winmaks,
2) Преобразовать одномерный массив таким образом, чтобы в начале располагались все элементы равные нулю, а потом все остальные.
Код C++

#include <algorithm>
#include <functional>
#include <iterator>
#include <locale>
#include <iostream>
int main()
{
setlocale(LC_ALL, "");
int arr[] = {0,1,-5,2,0,-4,3,4,0,5,6,-3,0,7,8,-2,9,10};
const size_t N = sizeof(arr) / sizeof(arr[0]);
std:artition(arr, arr+N, std::bind2nd(std::equal_to<int>(), 0));
typedef std::ostream_iterator<int> O;
std::copy(arr, arr+N, O(std::cout, " "));
return 0;
}
а можешь написать на вижуал Си++?
Rififi
2336 / 1051 / 44
Регистрация: 03.05.2009
Сообщений: 2,656
13.12.2009, 15:05     массивы #9
winmaks,

спасиб конечно но я в начале написал что мне нужно в вижул Си++
поэтому тебе повезло, что именно на нём я и пишу, а не на какой-нибудь гадости типа builder'а

http://pic.ipicture.ru/uploads/091213/sTVIt2UCy3.jpg
winmaks
0 / 0 / 0
Регистрация: 13.12.2009
Сообщений: 19
13.12.2009, 15:12  [ТС]     массивы #10
значит нас фиг знает какой фигне учат в пермском политехе) раз я ничего не понимаю
мне больше понятней что Darky написал но все равно спасибо за помошь)
Rififi
2336 / 1051 / 44
Регистрация: 03.05.2009
Сообщений: 2,656
13.12.2009, 15:29     массивы #11
winmaks,

значит нас фиг знает какой фигне учат в пермском политехе) раз я ничего не понимаю
мне больше понятней что Darky написал но все равно спасибо за помошь)


просто у него обычный велосипедный код, чего я не люблю (:
Андрейка
419 / 223 / 27
Регистрация: 25.03.2009
Сообщений: 744
13.12.2009, 15:51     массивы #12
winmaks, да нет просто у Rififi C++ а Darky ассорти из С и С++ =)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.12.2009, 19:13     массивы
Еще ссылки по теме:

Массивы структур и массивы строк C++
C++ Массивы. Циклические алгоритмы (Заполнить массивы случайными числами, лежащими в интервале 0 до 100)
C++ Массивы структур, массивы векторов
Многомерные массивы, как перебирать внутренние массивы C++
Массивы структур и массивы строк C++

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

Или воспользуйтесь поиском по форуму:
winmaks
0 / 0 / 0
Регистрация: 13.12.2009
Сообщений: 19
13.12.2009, 19:13  [ТС]     массивы #13
помогите пожалуйста еще 3 задачку решить) на таком же языке как Darky писал чтоб там printf() scanf() был .....
Yandex
Объявления
13.12.2009, 19:13     массивы
Ответ Создать тему
Опции темы

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