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

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

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

Олимпиадная задача Сумма простых - C++

08.06.2013, 21:39. Просмотров 652. Ответов 15
Метки нет (Все метки)

наприме мы вводим размер массива 3 потом сколько чисел надо сложить 2 а потом массив 6 5 7 и вы водитьса другой массив например 6+5=11 5+7=12 6+7=13 массив (11 12 13)
вот 6+5 это он складывает 2 числа
подскажите пожалуста(((
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.06.2013, 21:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Олимпиадная задача Сумма простых (C++):

Олимпиадная задача - сумма чисел меньших N, которые делятся на A или на B - C++
Условие Ватсон поставил Рыбке простую задачу - найти сумму чисел меньших N, которые должны делиться или на A, или на B, и вывести ее...

Задача на дп (олимпиадная) - C++
Здравствуйте, имеется данная задача, основная проблема состоит в том, что мое решение никак не проходит по времени. Пробовал писать через...

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

Олимпиадная задача - C++
Есть такая задачка: В ряд выписаны числа, состоящие только из цифр 1, 3, 7: 1, 3, 7, 11, 13, 17, ... Необходимо по номеру N определить...

Олимпиадная задача - C++
Дошел до этой олимпиадной задачи и впал в ступор. Нагуглил, что можно решить с помощью матриц, либо с помощью графов, но какого-то...

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

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Belfegor
Ghost
172 / 172 / 6
Регистрация: 16.09.2012
Сообщений: 526
08.06.2013, 21:42 #2
нормально сформулируй вопрос
refat
0 / 0 / 0
Регистрация: 03.10.2012
Сообщений: 11
08.06.2013, 22:49  [ТС] #3
вводим
3(всего вводим 3 числа) 2(2 элемента поочередно суммируем всевозможными комбинациями)
7 6 5 (вот они О эелементы - наши действующие лица хД)
рез-тат в итоге
2 (тоесть у нас есть 2 суммы элементов- 7+6 И 6+5, а 7+5 не относится к простым числам). Вот и всё.
Kastaneda
08.06.2013, 23:05
  #4

Не по теме:

Цитата Сообщение от refat Посмотреть сообщение
а 7+5 не относится к простым числам
вот это поворот!

refat
0 / 0 / 0
Регистрация: 03.10.2012
Сообщений: 11
08.06.2013, 23:25  [ТС] #5
Цитата Сообщение от Kastaneda Посмотреть сообщение

Не по теме:


вот это поворот!

7+5=12 , простое число - число которое делится только само на себя и на 1,потому 7+5 - создает не простое число.Что смешного?

 Комментарий модератора 
Оскорбления на форуме запрещены в любом виде.
Genn55
367 / 214 / 41
Регистрация: 26.12.2012
Сообщений: 708
09.06.2013, 00:00 #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
#include <iostream>
#include <iomanip>
 
using namespace std;
 
int main()
{
int a=0,b=0;
cout << "enter a"<<"\n";
cin >> a;
cout << "enter d" <<"\n";
cin >> b;
//int *A=new int[n]; //одномерный массив
cout << setw(7) << "a" << setw(15) << "b" << setw(15) << "c" << endl << endl;
for (a=0; a <= 3; a++)
for (b = 0; b <= 3; b++)
for (int c = 0; c <= a*b; c++)
if (a + b == c)
cout << setw(7) << a<< setw(15) << b << setw(15) << c<< endl;
 
return 0;
 
}
Нашли все комбинации,что дальше?Просто не знаю что делать.
2e1773ce
09.06.2013, 00:11
  #7

Не по теме:

Цитата Сообщение от Kastaneda Посмотреть сообщение

Не по теме:


вот это поворот!

прочел подпись , лол ;d

Croessmah
09.06.2013, 00:45
  #8

Не по теме:

refat, а вот прежде, чем думать о других как о дураках, лучше правильно сформулировать вопрос, чтобы было понятно, что простым числом должен быть результат сложения, а не операнды

refat
0 / 0 / 0
Регистрация: 03.10.2012
Сообщений: 11
09.06.2013, 00:46  [ТС] #9
Цитата Сообщение от Genn55 Посмотреть сообщение
Нашли все комбинации,что дальше?Просто не знаю что делать.
не это не то мне надо чтобы в массиве складывала два числа. Например мы задаем массив arr{6 5 7} а потом он должно в массиве сложить по очереди числа 6+5=11 5+7=12 6+7=13 и вывести другои массив arr{11 12 13}
мне просто надо решить вот эту задачу (Задано множество S = {x1, x2, ..., xN} и целое K, необходимо подсчитать, сколько сумм S из K чисел в данном множестве являются простыми?) не знаю как это сделать (((((( но я могу наити количество простых чисел(( вот мой код#include <iostream>
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 <cmath>
#include <iomanip>
using namespace std;
 
int main(void) {
  double k = 0, s = 0;
  int n;
  cin >> n;
  int arr[n];
  for (int i = 0; i < n; i++) {
      cin >> arr[i];
  }
 for (int i=0; i < n; i++)
    {
        for (int j=2; j <= arr[i]/2; j++)
        {
            if (arr[i]%j == 0 && arr[i] != j)
            {
                arr[i] = 0;
                break;
            }
        }
        if (arr[i] != 0)
        {
            cout << arr[i] << " ";
            k++;
        }
    }  cout<<endl; 
    cout<<k;
    
    return 0;
}
Dragokas
Эксперт WindowsАвтор FAQ
15823 / 6671 / 804
Регистрация: 25.12.2011
Сообщений: 10,332
Записей в блоге: 16
09.06.2013, 02:08 #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
53
54
55
56
57
#include <iostream>
 
using namespace std;
 
// Прототип функции
bool isSimple(int);
 
// Определяет все комбинации чисел, результатом суммирования которых является простое число
// (только 2 операнда)
int main()
{
    setlocale (0, "rus");
 
    int n,      // размерность массива
        f,      // 1-ый операнд
        s,      // 2-ой операнд
        sum;    // сумма чисел
 
    cout << "Введите размерность массива: ";
    cin >> n;
 
    int *arr;
    arr = new int[n];
 
    cout << "\n\nВведите " << n << " чисел через пробел: ";
 
    for (int i = 0; i < n; i ++ ) 
    {
        cin >> arr[i];
    }
    cout << "\n\n";
 
    for (f = 0; f < (n - 1); f ++ )
    {
        for (s = (f + 1); s < n; s ++ )
        {
            sum = arr[f] + arr[s];
            if (isSimple(sum))
                printf("% 3i  +% 4i  =% 4i \n", arr[f], arr[s], sum);
        }
    }
 
    cout << endl;
 
    system("pause>nul");
    return 0;
}
 
bool isSimple(int num)
{
    for (int j = 2; j <= (num / 2); j ++ )
    {
        if ((num % j == 0) && (num != j))
            return false;
    }
    return true;
}
Миниатюры
Олимпиадная задача Сумма простых  
Belfegor
Ghost
172 / 172 / 6
Регистрация: 16.09.2012
Сообщений: 526
09.06.2013, 02:23 #11
Цитата Сообщение от Dragokas Посмотреть сообщение
Если правильно
вот задание его http://www.e-olimp.com/problems/1270
Dragokas
Эксперт WindowsАвтор FAQ
15823 / 6671 / 804
Регистрация: 25.12.2011
Сообщений: 10,332
Записей в блоге: 16
09.06.2013, 02:42 #12
Жаль, не понимаю я условий такой задачи, даже с примера. Я считаю, что там большее количество сумм.
MrGluck
09.06.2013, 06:14
  #13

Не по теме:

Уже хотел помочь, но потом смотрю

Цитата Сообщение от refat Посмотреть сообщение
ты дурак ?
и понимаю, пусть сначала научиться уважительно относиться к форумчанам, помощь нужна ему а не нам.

Kastaneda
09.06.2013, 09:10
  #14

Не по теме:

refat, ты ж даже задания сформулировать не можешь. В первом посте нет не слова о простых числах. Потом ты пробуешь еще раз описать задание, при этом в конце всплывает

Цитата Сообщение от refat Посмотреть сообщение
а 7+5 не относится к простым числам
т.е. по твоему это интуитивно понятное условие, которое мы должны были понять из первого поста (а ты считаешь, что в первом посте задача описана полностью).
Далее люди пишут тебе какой-то код, дописывая к нему "если я правильно понял", но оказывается, что это не то, что тебе надо.
Итог - люди потратили свое время на то, чтобы попробовать разобраться в наборе слов, называемым "условие задачи" и на написание ненужного им и тебе кода, развернули тему на 2 страницы (при чем 2 неинформативные страницы) и все это из-за того, что у тебя не хватает ума даже на то, чтобы написать что тебе надо. Зато ты смело пишешь
Цитата Сообщение от refat Посмотреть сообщение
ты дурак ?
Советую сделать переоценку своих интеллектуальных способностей и, приняв правильное решение, забыть про программирование!

Hifth
0 / 0 / 0
Регистрация: 02.05.2013
Сообщений: 7
09.06.2013, 15:46 #15
Цитата Сообщение от Kastaneda Посмотреть сообщение

Не по теме:

refat, ты ж даже задания сформулировать не можешь. В первом посте нет не слова о простых числах. Потом ты пробуешь еще раз описать задание, при этом в конце всплывает

т.е. по твоему это интуитивно понятное условие, которое мы должны были понять из первого поста (а ты считаешь, что в первом посте задача описана полностью).
Далее люди пишут тебе какой-то код, дописывая к нему "если я правильно понял", но оказывается, что это не то, что тебе надо.
Итог - люди потратили свое время на то, чтобы попробовать разобраться в наборе слов, называемым "условие задачи" и на написание ненужного им и тебе кода, развернули тему на 2 страницы (при чем 2 неинформативные страницы) и все это из-за того, что у тебя не хватает ума даже на то, чтобы написать что тебе надо. Зато ты смело пишешь


Советую сделать переоценку своих интеллектуальных способностей и, приняв правильное решение, забыть про программирование!



Ну, а почему, когда он написал 7+5, что не простое число - начались смешки, можно было бы попросить уточнить например, что имеется в виду.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.06.2013, 15:46
Привет! Вот еще темы с ответами:

Олимпиадная задача - C++
#include &lt;cstdio&gt; #include &lt;cstdlib&gt; #include &lt;iostream&gt; using namespace std; int main() { unsigned int N; cout&lt;&lt;&quot;N=&quot;;...

Олимпиадная задача - C++
Алфавит мурмарианской системы счисления включает три цифры - 1, 2 и 3. Одна из популярных социальных сетей &quot;НаМурмаре&quot; при регистрации...

C++. Олимпиадная задача - C++
Здравствуйте! Код не проходит какой-то тест, может алгоритм не правильный. И если не правильный, то как исправить? Помогите найти ошибку....

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


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

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

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