Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/16: Рейтинг темы: голосов - 16, средняя оценка - 5.00
AleksandrShurik
0 / 0 / 0
Регистрация: 24.11.2010
Сообщений: 7
1

Дано натуральное число n. Вывести на экран все натуральные числа, меньше n и взаимно простые с ним.

24.11.2010, 23:33. Просмотров 2997. Ответов 9
Метки нет (Все метки)

Помогите пожалуйста, мне на завтра 2 проги в универ, а я совсем не знаю как их сделать(((

1)Дано натуральное n(n<100), целые числа а1,.......,аn и b1,......bn. Построить пересечение последовательностей а1,.......,аn и b1,......bn, т.е получить последовательность с1,......,сk, содержащую все числа, входящие в а1,.......,аn и b1,......bn.

2) Дано натуральное число n. Вывести на экран все натуральные числа, меньше n и взаимно простые с ним.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.11.2010, 23:33
Ответы с готовыми решениями:

Дано натуральное число k. Получите все натуральные числа, меньшие k и взаимно простые с ним
Тест. k=24. Результат. 1; 5; 7; 11; 13; 17, 19; 23. Помогите с написанием...

Найти все натуральные числа меньше n и взаимно простые с ним
Прошу помочь написать программу на с++. Само здание: Дано натуральное число n....

Получить все натуральные числа, меньше n и взаимно простые с ним
Дано натуральное число n. Получить все натуральные числа, меньше n и взаимно...

Дано натуральное число. Вывести на экран все простые числа до заданного числа.
Дано натуральное число. Вывести на экран все простые числа до заданного числа.

Найти все натуральные числа, меньшие заданного числа и взаимно простые с ним
Дано натуральное число n. Необходимо получить все натуральные числа, меньшие nn...

9
Stealik
5 / 5 / 2
Регистрация: 24.11.2010
Сообщений: 10
25.11.2010, 00:07 2
Решение 1-й:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream.h>
#include <cstring>
int main()
{
    const int n=5, k=n*2;
   int a[n], b[n], c[k];
   cout << "a";
   for (int i=0; i<n; i++)
    {
    cin >> a[i];
      c[i] = a[i];
      }
   cout << "b";
   for (int i=0; i<n; i++)
    cin >> b[i];
   for (int i=k/2; i<k; i++)
    c[i]=b[i];
   for (int i = 0; i<k; i++)
    cout << c[i] << " ";
}
0
AleksandrShurik
0 / 0 / 0
Регистрация: 24.11.2010
Сообщений: 7
25.11.2010, 00:41  [ТС] 3
Не пашет(((((
0
Stealik
5 / 5 / 2
Регистрация: 24.11.2010
Сообщений: 10
25.11.2010, 01:06 4
В каком смысле не пашет? Я не правильно понял задачу или прога не работает? У меня всё работает прекрасно))) Добавьте в конец, к примеру, cin >> a[0], и увидите результат.
1
valeriikozlov
Эксперт С++
4686 / 2512 / 751
Регистрация: 18.08.2009
Сообщений: 4,550
25.11.2010, 08:25 5
Вторую можно через НОД решить
0
МаксимМВ
C/C++
90 / 90 / 18
Регистрация: 01.07.2010
Сообщений: 281
25.11.2010, 09:18 6
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
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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
#define MAX 20
#define MIN 0
 
#define TRUE 1
#define FALSE 0
 
int intersection(int *set1, int *set2, int *setr, int size)
{
    int i,j,nper=0;
    for (i=0;i<size;i++)
        for (j=0;j<size;j++)
            if (i!=j) 
                if (set1[i]==set2[i])
                {
                    int nt,okd=TRUE;
                    for (nt=0;nt<nper;nt++)
                        if (setr[nt]==set1[i])
                        {
                            okd=FALSE;
                            break;
                        }
                    if (okd)
                        setr[nper++]=set1[i];
                }
    return nper;
}
 
void randz(int *set, int size)
{
    int i;
    for (i=0;i<size;i++)
        set[i]=rand()%(MAX-MIN)+MIN;
}
 
void printm(int *set, int size)
{
    int i;
    for (i=0;i<size;i++)
        printf("%d ",set[i]);
    printf("\n");
}
 
int main(int argc, char *argv[])
{
    srand(time(0));
    int n;
    printf("Enter n:");
    scanf("%d",&n);
    int mass1[100], mass2[100],okmass[100];
    randz(mass1,n);
    randz(mass2,n);
    printm(mass1,n);
    printm(mass2,n);
    printf("=============================\n");
    int srm=intersection(mass1,mass2,okmass,n);
    printm(okmass,srm);
    
    return 0;
}
Добавлено через 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
#include <stdio.h>
#include <stdlib.h>
 
int NOD(int m, int n)
{
    if (m==0) return n;
    if (n==0) return m;
    if (m%2==0 && n%2==0)
        return 2*NOD(m/2,n/2);
    if (m%2==0 && n%2!=0)
        return NOD(m/2,n);
    if (m%2!=0 && n%2==0)
        return NOD(m,n/2);
    if (m%2!=0 && n%2!=0)
        return NOD(n,abs(m-n));
    return -1;
}
 
int main(int argc, char *argv[])
{
    int n,i;
    printf("Enter n: ");
    scanf("%d",&n);
    printf("Result:\n");
    for (i=0;i<n;i++)
        if (NOD(i,n)==1)
            printf("%d, ",i);
    return 0;
}
Оно?
2
sat11569
0 / 0 / 0
Регистрация: 28.12.2010
Сообщений: 3
28.12.2010, 21:00 7
А на паскале можно ??
0
igorrr37
1867 / 1483 / 751
Регистрация: 21.12.2010
Сообщений: 2,473
Записей в блоге: 11
28.12.2010, 22:30 8
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
#include <conio.h>
#include<iostream>
#include<set>
using namespace std;
 
int main()
{
    short n, x;
    set<short>s;
    set<short>::iterator it;
    cout<<"Vvedite n\n\n";
    cin>>n;
    for(int i=0;i<n;i++){
        printf("a%d= ", i);
        cin>>x;
        s.insert(x);
    }
    cout<<endl;
    for(int i=0;i<n;i++){
        printf("b%d= ", i);
        cin>>x;
        s.insert(x);
    }
    cout<<"\n\nPeresechenie\n\n";
    for(it=s.begin();it!=s.end();it++)cout<<*it<<" ";
    getch();
}
0
sat11569
0 / 0 / 0
Регистрация: 28.12.2010
Сообщений: 3
29.12.2010, 00:32 9
а можна на нормальном языке ))
0
МаксимМВ
C/C++
90 / 90 / 18
Регистрация: 01.07.2010
Сообщений: 281
30.12.2010, 18:50 10
пиши в нужный раздел. В этом разделе помогают с C/C++
0
30.12.2010, 18:50
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.12.2010, 18:50

Вложенные циклы: получить все натуральные числа, меньшие n и взаимно простые с ним
Условие: Дано натуральное число n. Получить все натуральные числа, меньшие n и...

Для заданного натурального числа найти все числа меньше его и взаимно простые с ним
Помогите написать код: для заданного с клавиатуры натурального числа N найти...

Циклические вычислительные процессы (Дано натуральное число N. Вывести на экран все шестизначные числа, сумма цифр которых равна N)
Задача предполагает использование целочисленной арифметики и должна быть...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

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