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

Помогите развязать задачу очень нужно на С++ - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.73
OKS_by_V
1 / 1 / 0
Регистрация: 15.05.2011
Сообщений: 78
29.09.2011, 22:03     Помогите развязать задачу очень нужно на С++ #1
Задан массив чисел. Если есть элемент равен а, то результат равен сумме элементов, которые идут после а, в противном случае результатом будет число 10
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Daemon025
 Аватар для Daemon025
380 / 329 / 67
Регистрация: 06.12.2010
Сообщений: 900
29.09.2011, 22:15     Помогите развязать задачу очень нужно на С++ #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
#include <iostream>
 
main()
{
    int mas[10];
    int sum = 0;
    int a = 2;
 
    for(int i=0; i<10; i++)
    {
        mas[i] = i;
        sum += mas[i];
        std::cout << mas[i] << " ";
    }
    std::cout << std::endl;
 
    for(int i=0; i<10; i++)
    {
        if(mas[i] == a) mas[i] = sum;
        else mas[i] = 10;
        std::cout << mas[i] << " ";
    }
 
    return 0;
}
An1ka
65 / 70 / 2
Регистрация: 30.06.2011
Сообщений: 176
29.09.2011, 22:24     Помогите развязать задачу очень нужно на С++ #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include<iostream>
template< size_t n>
 int func( int (&mass)[n], int a)
{
  int summ = 0;
  for ( int i =0; i < n; ++i)
    if ( mass[i] == a)
    {
      for ( int j =i+1; j < n; ++j)
      summ += mass[j];
    return summ;
    }
  return 10;
}
   int main() {
   int mass[5] = { 2, 3, 5, 2, 6};
   int a = 5;
   std::cout << func( mass, a) << std::endl;
   return 0;
}
Slimmy
 Аватар для Slimmy
65 / 18 / 2
Регистрация: 09.10.2010
Сообщений: 97
29.09.2011, 22:43     Помогите развязать задачу очень нужно на С++ #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
28
#include "stdafx.h"
#include <iostream>
#include <time.h>
#define size 15
using namespace std;
 
int main(){
    int massive[size];
    int summ = 0, a;
    srand(time(NULL));
 
    cout << "Input a: ";
    cin >> a;
    for(int i = 0; i < size; i++){
        massive[i] = 1 + rand() % 10;
        cout << massive[i] << " ";
    }
    for(int i = size; i >= 0; i--){
        if(massive[i] == a){
            cout << "Summ: " << summ << endl;
            break;
        }
        summ += massive[i];
    }   
    
    system("pause");
    return 0;
}
На выходе summ равна -858993451
OKS_by_V
1 / 1 / 0
Регистрация: 15.05.2011
Сообщений: 78
29.09.2011, 23:14  [ТС]     Помогите развязать задачу очень нужно на С++ #5
Спасибо...)))

очень помогло!!!
Вот собствена задачка на Указателях помогите!!!



С клавиатуры последовательно вводятся числа типа short. Составить программу, которая выводит сначала положительные числа в порядке их введения, а затем отрицательные в порядке их ввода. Использовать очередь. Ввод чисел прекращается, когда введенное число - 0
neske
1419 / 786 / 55
Регистрация: 26.03.2010
Сообщений: 2,693
29.09.2011, 23:18     Помогите развязать задачу очень нужно на С++ #6
Slimmy, 18 строка.

C++
1
for(int i = size - 1; i >= 0; i--){
mas[size] это выход за границу массива, а в следствии по этому адресу хранится мусор.
OKS_by_V
1 / 1 / 0
Регистрация: 15.05.2011
Сообщений: 78
29.09.2011, 23:40  [ТС]     Помогите развязать задачу очень нужно на С++ #7
Реально очень нужно посмотрите на задачку!!!
Gepar
 Аватар для Gepar
1173 / 529 / 20
Регистрация: 01.07.2009
Сообщений: 3,511
29.09.2011, 23:45     Помогите развязать задачу очень нужно на С++ #8
OKS_by_V, очередь это в смысле std::queue ?
OKS_by_V
1 / 1 / 0
Регистрация: 15.05.2011
Сообщений: 78
30.09.2011, 11:38  [ТС]     Помогите развязать задачу очень нужно на С++ #9
Цитата Сообщение от Gepar Посмотреть сообщение
OKS_by_V, очередь это в смысле std::queue ?

да стандартний консольний вариант!!!

Добавлено через 11 часов 29 минут



Ап народ ...Взгляните возможно хто знает как решить ее..))
Thinker
Эксперт C++
 Аватар для Thinker
4215 / 2189 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
30.09.2011, 11:58     Помогите развязать задачу очень нужно на С++ #10
Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
#include<stdio.h>
#include<malloc.h>
 
typedef struct NODE
{
   int data;
   struct NODE *next;
} NODE;
 
void AddElement(NODE **first, NODE **last, int x)
{
   NODE *q;
   q = (NODE *)malloc(sizeof(NODE));
   q->data = x;
   q->next = NULL;
   if (*last == NULL)
      *first = q;
   else (*last)->next = q;
   *last = q;
}
 
int Extract(NODE **first, NODE **last, int *x)
{
   NODE *q;
   if (*first == NULL)
      return 0;
   *x = (*first)->data;
   q = *first;
   *first = (*first)->next;
   if (*first == NULL)
      *last = NULL;
   free(q);
   return 1;
}
 
int main ( )
{
   int x;
   NODE *first = NULL, *last = NULL;
   printf("x = "); scanf("%d", &x);
   while (x)
   {
      if (x > 0)
         printf("%d\n", x);
      else
         AddElement(&first, &last, x);
      printf("x = "); scanf("%d", &x);
   }
   while (Extract(&first, &last, &x))
      printf("x = %d\n", x);
   return 0;
}
Добавлено через 6 минут
Можно так:

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
#include<stdio.h>
#include<malloc.h>
 
typedef struct NODE
{
   int data;
   struct NODE *next;
} NODE;
 
void AddElement(NODE **first, NODE **last, int x)
{
   NODE *q;
   q = (NODE *)malloc(sizeof(NODE));
   q->data = x;
   q->next = NULL;
   if (*last == NULL)
      *first = q;
   else (*last)->next = q;
   *last = q;
}
 
int Extract(NODE **first, NODE **last, int *x)
{
   NODE *q;
   if (*first == NULL)
      return 0;
   *x = (*first)->data;
   q = *first;
   *first = (*first)->next;
   if (*first == NULL)
      *last = NULL;
   free(q);
   return 1;
}
 
int main ( )
{
   int x;
   NODE *first1 = NULL, *last1 = NULL;
   NODE *first2 = NULL, *last2 = NULL;
   printf("x = "); scanf("%d", &x);
   while (x)
   {
      if (x > 0)
         AddElement(&first1, &last1, x);
      else
         AddElement(&first2, &last2, x);
      printf("x = "); scanf("%d", &x);
   }
   while (Extract(&first1, &last1, &x))
      printf("x = %d\n", x);
   while (Extract(&first2, &last2, &x))
      printf("x = %d\n", x);
   return 0;
}
OKS_by_V
1 / 1 / 0
Регистрация: 15.05.2011
Сообщений: 78
30.09.2011, 15:27  [ТС]     Помогите развязать задачу очень нужно на С++ #11
Спасибо, но возможно есть ище какие то варианти ришения??

С клавиатуры последовательно вводятся числа типа short. Составить программу, которая выводит сначала положительные числа в порядке их введения, а затем отрицательные в порядке их ввода. Использовать очередь. Ввод чисел прекращается, когда введенное число - 0
Thinker
Эксперт C++
 Аватар для Thinker
4215 / 2189 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
30.09.2011, 15:34     Помогите развязать задачу очень нужно на С++ #12
Цитата Сообщение от OKS_by_V Посмотреть сообщение
Спасибо, но возможно есть ище какие то варианти ришения??
А что вам не понравилось?
alkagolik
 Аватар для alkagolik
1510 / 616 / 79
Регистрация: 15.07.2011
Сообщений: 3,552
30.09.2011, 16:01     Помогите развязать задачу очень нужно на С++ #13
OKS_by_V, не на рынке, вам за красивые глаза дали алгоритм структуры динамических данных (очередь), а вы носом крутите как девица красная.
Dekio
30.09.2011, 16:50
  #14

Не по теме:

Slimmy, имеете что-то против украинцев и других народов? Советую перечитать правила, пока больших проблем не нажили.


 Комментарий модератора 
Прекращаем флуд
silent_1991
30.09.2011, 16:58
  #15
 Комментарий модератора 
Кто возобновит спор - будет наказан, а тема будет закрыта.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.09.2011, 17:22     Помогите развязать задачу очень нужно на С++
Еще ссылки по теме:

Очень нужно развязать задачу C++
C++ задачу с оператора выбора case очень нужно : Пусть элементами равностороннего треугольника являются: 1.Сторона а; 2.Площад

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

Или воспользуйтесь поиском по форуму:
OKS_by_V
1 / 1 / 0
Регистрация: 15.05.2011
Сообщений: 78
30.09.2011, 17:22  [ТС]     Помогите развязать задачу очень нужно на С++ #16
Цитата Сообщение от silent_1991 Посмотреть сообщение
Кто возобновит спор - будет наказан, а тема будет закрыта.


Всем спасибо хто помог ...во всем розобрался!!
Yandex
Объявления
30.09.2011, 17:22     Помогите развязать задачу очень нужно на С++
Ответ Создать тему
Опции темы

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