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

Найти 100 первых простых чисел - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 253, средняя оценка - 4.74
Raynk
0 / 0 / 0
Регистрация: 17.08.2009
Сообщений: 6
17.08.2009, 09:04     Найти 100 первых простых чисел #1
Привет всем помогите пожалуйста кто может у меня такая проблема не могу решить задачи по C++ потому что я не понимаю этот язык программирования вот несколько заданий.

1. Найти 100 первых простых чисел.
2. Дано число n. Напечатать те натуральные числа, квадрат которых не превышает n.
3. Дан массив x [1]..x[n] целых чисел. Не используя других массивов, переставить элементы массива в обратном порядке.
4. Дано слово. Определить, одинаковы ли второй и четвертый символы в нем.
5. Дано слово. Получить его часть, образованную идущими подряд буквами, начиная с k-й и кончая m-й, (k и m вводятся с клавиатуры).
6. Дана прямоугольная таблица a[1:n,1:m]. Найти минимальный из максимумов строк, т.е. min (max aij ), 1 <= i <= n, 1 <= j <= m
7. Все элементы матрицы, кроме диагональных, заменить единицами.
8. Дана квадратная таблица a[1:n,1:n]. Найти номер строки, содержащей наибольшее число нулей.
9. В соревнованиях по прыжкам в длину участвовали N-спортсменов. Каждый спортсмен мог сделать М-попыток. Результаты (длины прыжков) занесены в таблицу A[1:M,1:N]. Если результат не засчитывали, то вместо длины прыжков заносили ноль. Составить алгоритм, который дает возможность определить лучший результат К-ого спортсмена.
10. Дан массив данных о работающих на фабрике: фамилия, имя, отчество, адрес (улица, дом, квартира) и дата поступления на работу (месяц, год). Определить, есть ли в списке Ивановы (Иванов, Иванова), если есть, то вывести их адрес (адреса) и посчитать из них количество, проработавших не менее двух лет на сегодняшний день.
11. Даны два одномерных массива A[n] и B[n]. Получить массив С[2,n], первая строка которого – упорядоченные по возрастанию элементы B[n], вторая строка – упорядоченные по убыванию элементы A[n]. Использовать алгоритм вставки.

Пожалуйста решите эти задания кто сможет зарание благодарен!!!!!!!!!!!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Rififi
 Аватар для Rififi
2330 / 1045 / 43
Регистрация: 03.05.2009
Сообщений: 2,656
18.08.2009, 21:20     Найти 100 первых простых чисел #21
odip,
Дано число n. Напечатать те натуральные числа, квадрат которых не превышает n
Эта задача ?


аха.
хотя я щас посмотрел в тот код, что-то я там не вижу квадратов никаких.
чё он там решал, про то мне неведомо (((: я решил пункт 2

Добавлено через 2 минуты 40 секунд
решается совсем другая задача.
понятно. аффтар бдительно следит, чтобы участники форума не маялись от безделья и героически спасает их от онного.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
odip
Эксперт C++
 Аватар для odip
7225 / 3287 / 58
Регистрация: 17.06.2009
Сообщений: 14,165
18.08.2009, 21:20     Найти 100 первых простых чисел #22
второй набор задач выложил в отдельную тему:
C++ не могу в нём разобраться (заход 2)

Там есть прикольные задачки, например N10
Raynk
0 / 0 / 0
Регистрация: 17.08.2009
Сообщений: 6
19.08.2009, 16:07  [ТС]     Найти 100 первых простых чисел #23
Цитата Сообщение от insolent Посмотреть сообщение
N1
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 <iostream>
using namespace std;
//////////////////////////////////////////////////////////////////////////
bool prov(int a)
{
    int i,k,
        flag;
    for(i = 2; i <= a;i++)
    {
        flag = 1;
        for(k = 2; k*k <= i;k++)
        {
            if(i % k == 0)
            {
                flag = 0;
                break;
            }
        }
    }
    if(flag == 1)
        return 1;
    return 0;
}
 
int main(int argc, char* argv[])
{
    setlocale(0,"");
    int k = 0;
    cout << "Сто первых простых чисел:" << endl;
    for(int i = 2; i < RAND_MAX;i++)
    {
        if(prov(i))
        {
            cout << ++k << ") " << i << endl;
        }
        if(k == 100)
            break;
    }
    getchar();
    return 0;
}



N3
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
#include <iostream>
#include <ctime>
using namespace std;
//////////////////////////////////////////////////////////////////////////
void out(int* a,int n);
void vin(int* a,int n);
void perestan(int *a,int n);
//////////////////////////////////////////////////////////////////////////
int main(int argc, char* argv[])
{
    setlocale(0,"");
    int *a,
        n;
    cout << "Введите количество элементов в массиве: ";
    wcin >> n;
    _flushall();
    a = new int[n];
    vin(a,n);
    cout << "Массив:" << endl;
    out(a,n);
    cout << "Массив(элементы в обратном порядке):" << endl;
    perestan(a,n-1);
    out(a,n);
    getchar();
    return 0;
}
//////////////////////////////////////////////////////////////////////////
void out(int* a,int n)
{
    for(int i = 0; i < n; i++)
    {
        cout.width(5);
        cout << a[i];
    }
    cout << "\n\n";
}
//////////////////////////////////////////////////////////////////////////
void vin(int* a,int n)
{
    srand((unsigned)time(NULL));
    for (int i = 0; i < n;i++)
    {
        a[i] = rand()%401-200;
    }
}
//////////////////////////////////////////////////////////////////////////
void perestan(int *a,int n)
{
    for (int i = 0 ; i < n/2;i++)
    {
        a[i] ^= a[n-i] ^= a[i] ^= a[n-i]; 
        /*a[n-i] = a[i] + a[n-i];
        a[i] = a[n-i] - a[i];
        a[n-i] = a[n-i] - a[i];*/
    }
}
В 3 задании существуют ошибки т.е при проверки цикл зацикливается
insolent
 Аватар для insolent
826 / 347 / 15
Регистрация: 30.01.2009
Сообщений: 1,204
19.08.2009, 16:18     Найти 100 первых простых чисел #24
Цитата Сообщение от Raynk Посмотреть сообщение
зацикливается
Где?
Raynk
0 / 0 / 0
Регистрация: 17.08.2009
Сообщений: 6
19.08.2009, 16:25  [ТС]     Найти 100 первых простых чисел #25
У тебя не каких ошибок не происходило? и Какой у тебя C++
Количество массивов вводишь и он зацикливается
M128K145
Эксперт C++
 Аватар для M128K145
8272 / 3491 / 142
Регистрация: 03.07.2009
Сообщений: 10,707
19.08.2009, 17:16     Найти 100 первых простых чисел #26
Raynk, нету там ошибок. Я проверял на VS2005/2008, Dev-C++ и Borland C++ 3.1, и везде все отрабатывало нормально без зацикливаний
odip
Эксперт C++
 Аватар для odip
7225 / 3287 / 58
Регистрация: 17.06.2009
Сообщений: 14,165
19.08.2009, 17:29     Найти 100 первых простых чисел #27
У меня gcc 3.4.5 из mingw ругается на задачу N3.
Но после замены строки 15 на "cin >>n" все заработало.
Не знаю откуда там взялся wcin
M128K145
Эксперт C++
 Аватар для M128K145
8272 / 3491 / 142
Регистрация: 03.07.2009
Сообщений: 10,707
19.08.2009, 17:40     Найти 100 первых простых чисел #28
odip, я кажется понял где он зациклился, введи значение больше 10000 и оно будет около 30 сек выводить ответ.
Raynk, так вот, для проверки того как работает программа не нужно вводить очень большие размерности, досаточно массива в 10-20 элементов
chert
0 / 0 / 0
Регистрация: 10.10.2009
Сообщений: 26
10.10.2009, 12:13     Найти 100 первых простых чисел #29
Найти сумму цифр.
Andrei
0 / 0 / 0
Регистрация: 20.10.2009
Сообщений: 8
20.10.2009, 19:05     Найти 100 первых простых чисел #30
Привет всем помогите пожалуйста кто может : не могу решить задачи по C++ ,только начинаю изучать C++:
Задача 1. Линейные программы:
От станции до озера S км. Туристы, направляясь от станции к озеру, полтора часа шли пешком со скоростью А км/ч, а затем сели на попутную машину, которая еха-ла со скоростью В км/ч. За какое время туристы добрались до озера?
Задача 2. Ветвления:
Гнездо для ножки деревянной кровати имеет форму прямоугольной вырезки. Опреде-лить, подойдет ли данный четырехугольный брусок для этого гнезда.
Задача 3. Циклы:
Ввести с клавиатуры 10 чисел – положительных и отрицательных. Заменить все отрица-тельные числа их модулями и напечатать все полученные 10 чисел.
Задача 4. Массивы линейные:
Данные о температуре воздуха за декаду декабря хранятся в массиве. Определить, сколько раз температура была выше средней за эту декаду.
Задача 5. Прямоугольные таблицы:
Дан целочисленный массив В[1..5, 1..5]. Найти количество отрицательных элементов этого массива, расположенных ниже главной диагонали.
Задача 6. Данные символьного типа:
Напишите программу, удаляющую из текста все буквы, совпадающие с его последней буквой

Пожалуйста решите эти задания кто сможет. Буду благодарен!
From_Tula
40 / 40 / 2
Регистрация: 22.05.2009
Сообщений: 469
20.10.2009, 19:31     Найти 100 первых простых чисел #31
Больше похоже на индивидуальные задания из универа!!!
Задача 1. Линейные программы:
От станции до озера S км. Туристы, направляясь от станции к озеру, полтора часа шли пешком со скоростью А км/ч, а затем сели на попутную машину, которая еха-ла со скоростью В км/ч. За какое время туристы добрались до озера?

ЕСли ты учишься в универе то такую задачу просто стыдно не решить как бы ты далёк небыл от программирования...
СПерва реши её на бумаге а потом, переведи в код!
А если после этого что то будет не понятно, тогда конкретно спрашивай!!!
Andrei
0 / 0 / 0
Регистрация: 20.10.2009
Сообщений: 8
22.10.2009, 13:57     Найти 100 первых простых чисел #32
От станции до озера S км. Туристы, направляясь от станции к озеру, полтора часа шли пешком со скоростью А км/ч, а затем сели на попутную машину, которая ехала со скоростью В км/ч. За какое время туристы добрались до озера?
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include "stdafx.h"
#include "math.h"
#include "conio.h"
 
int _tmain(int argc, _TCHAR* argv[])
{
    float t1,So,A,B;
    printf("input:t1");
        scanf("%f",&t1);
    printf("input:So");
        scanf("%f",&So);
        S1=t1*A;
        S2=So-S1;
        t2=S2/B;
    printf("\n S1=%f \n,"S1");
    printf("\n S2=%f \n,"S2");
    printf("\n t2=%f \n,"t2");
    getch();
    return 0;
}


Гнездо для ножки деревянной кровати имеет форму прямоугольной вырезки. Определить, подойдет ли данный четырехугольный брусок для этого гнезда.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include "stdafx.h"
#include "math.h"
#include "conio.h"
 
int _tmain(int argc, _TCHAR* argv[])
{
    float a1,b1;
    a=10;b=12;
    if ((a1=a)end (b1=b))
        cout<<"input:Брус подходит !";
    else
        cout<<"input:Брус не подходит !";
    getch();
    return 0;
}



Составьте программу, которая вычисляет произведение чисел от 1 до N. Значение N вводится с клавиатуры.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include "stdafx.h"
#include "iostream.h"
#include "conio.h"
void main()
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    int n=10,k[10];
    cout<<"input 10 chisel ";
    {
        cin>>k[i]
        if (r>15),k[i]=15;
    }
    for(i=0;i<10;i++)
        cout<<endl<<endl<<k[i]<<" ";
    getch();
    return 0;
}


Ну а далее .......????????
LLLob
22 / 22 / 5
Регистрация: 21.10.2009
Сообщений: 38
22.10.2009, 16:28     Найти 100 первых простых чисел #33
Программа реализации задачи №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
#include<iostream>
#include<windows.h>
using namespace std;
void main()
{
    SetConsoleOutputCP(1251);
    float a, b, a1, b1;
    cout<<"Задача - 2\n";
    cout<<"Введите размеры прямоугольной вырезки гнезда:\n";
    cout<<"Длина = ";
    cin>>a;
    cout<<"Ширина = ";
    cin>>b;
    cout<<"Введите размеры четырехугольного бруска:\n";
    cout<<"Длина = ";
    cin>>a1;
    cout<<"Ширина = ";
    cin>>b1;
    if(a==a1 && b==b1) cout<<"Данный четырехугольный брусок подходит для гнезда\n";
    else cout<<"Данный четырехугольный брусок не подходит для гнезда\n";
    cin.get();
    cin.get();
}
Добавлено через 9 минут
Задача №3 про положительные и отрицательные числа:
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<windows.h>
using namespace std;
void main()
{
    SetConsoleOutputCP(1251);
    int a;
    int n=1;
    cout<<"Задача - 3\n";
    cout<<"Введите 10 чисел:\n";
    while(n<11)
    {
        cout<<n<<" число = ";
        cin>>a;
        if(a<0) a=-1*a;
        cout<<a<<endl;
        n=n++;
    }
    cin.get();
    cin.get();
}
Добавлено через 13 минут
Задача №1 про туристов:
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<windows.h>
using namespace std;
void main()
{
    SetConsoleOutputCP(1251);
    float s, a, b, s1, s2, t;
    cout<<"Задача - 1\n";
    cout<<"Введите расстояние S до озера в км:\n";
    cin>>s;
    cout<<"Введите скорость А туристов в км/ч:\n";
    cin>>a;
    cout<<"Введите скорость B автомобиля в км/ч:\n";
    cin>>b;
    s1=1.5*a; //Путь пройденный туристами за 1.5 часа со скоростью А
    s2=s-s1; //Путь, который туристы проехали на автомобиле
    t=1.5+(s2/b);
             cout<<"Время затраченное туристами: "<<t<<" ч";
    cin.get();
    cin.get();
}
Andrei
0 / 0 / 0
Регистрация: 20.10.2009
Сообщений: 8
22.10.2009, 18:25     Найти 100 первых простых чисел #34
Спасибо LLLob . А что можеш сказать по этим?

Массивы линейные:
Данные о температуре воздуха за декаду декабря хранятся в массиве. Определить, сколько раз температура была выше средней за эту декаду.

Прямоугольные таблицы:
Дан целочисленный массив В[1..5, 1..5]. Найти количество отрицательных элементов этого массива, расположенных ниже главной диагонали.

Данные символьного типа:
Напишите программу, удаляющую из текста все буквы, совпадающие с его последней буквой

Пожалуйста решите эти задания кто сможет. Буду благодарен!
Andrei
0 / 0 / 0
Регистрация: 20.10.2009
Сообщений: 8
23.10.2009, 19:50     Найти 100 первых простых чисел #35
Замучился с ошибками. Исправте кто нибудь пожануйста.
Данные о температуре воздуха за декаду декабря хранятся в массиве. Определить, сколько раз температура была выше средней за эту декаду.

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
#include "stdafx.h"
#include<iostream>
#include "conio.h"
using namespace std;
 
 
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    int i;
    char*day[]={"ponedelnik","vtornik","sreda","chetverg","p'atnica","subota","voskrresenie","ponedelnik","vtornik","sreda"}
    float t[10];
    float sum;
    float sred;
    int s=0;
    printf("\n Vvedite temperaturu vozduha: \n");
    for (i=0;i<10;i++)
    {printf("input t:%i.12: "i++);
    scanf ("%i",&t[i]);
    sum+=t[i];
    }
    sred=sum/10;
    printf("\n sredn'aja tempiratura za dekadu: %2.1f",sred);
    getch();
    if (t[i]>sred),k++;
    cout<<"kolichestvo dnei'= "<<k;
    getch();
 
    return 0;
}
Добавлено через 16 минут
Дан целочисленный массив В[1..5, 1..5]. Найти количество отрицательных элементов этого массива, расположенных ниже главной диагонали.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include "stdafx.h"
#include<iostream>
#include "conio.h"
using namespace std;
#include "time.h"
main()
 
int _tmain(int argc, _TCHAR* argv[])
{
    srand((unsigned)time(0)*1000;
    int b[5][5]
        for(i+0;i<5;i++)
            j1=0;
        for(j=0;j<5;j++)
        {b[i][j]=-9+rand()%19;
        if((i>0)&&(j<i));
        if b[i][j]<0 k++;
        
    return 0;
}
Исправте кто нибудь пожалуйста . Горит срочно.
M128K145
Эксперт C++
 Аватар для M128K145
8272 / 3491 / 142
Регистрация: 03.07.2009
Сообщений: 10,707
23.10.2009, 22:12     Найти 100 первых простых чисел #36
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include "stdafx.h"
#include<iostream>
using namespace std;
#include "time.h"
main()
 
int _tmain(int argc, _TCHAR* argv[])
{
        srand((unsigned)time(0)*1000;
        int b[5][5];
        for(i=0;i<5;i++)
            for(j=0;j<5;j++)
            {
                b[i][j]=-9+rand()%19;
                if((i > 0 && j < i) && b[i][j] < 0)
                    k++;
            }
        cout<<k;
        cin.get();
        cin.get();
        return 0;
}
А вот в первой задаче мне религия не позволяет исправить ошибки
Andrei
0 / 0 / 0
Регистрация: 20.10.2009
Сообщений: 8
24.10.2009, 08:10     Найти 100 первых простых чисел #37
Спасибо M128K145 но прога не идет. 6 errrors.
M128K145
Эксперт C++
 Аватар для M128K145
8272 / 3491 / 142
Регистрация: 03.07.2009
Сообщений: 10,707
24.10.2009, 09:52     Найти 100 первых простых чисел #38
Andrei, иногда полезно читать какие ошибки пишутся.
Вот
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include "stdafx.h"
#include<iostream>
#include "ctime"
using namespace std;
 
int main()
{
    srand((unsigned)time(0)*1000);
    int b[5][5], i, j, k(0);
    for(i=0;i<5;i++, std::cout<<std::endl)
        for(j=0;j<5;j++)
        {
            b[i][j]=-9+rand()%19;
            std::cout<<b[i][j]<<'\t';
            if((i > 0 && j < i) && b[i][j] < 0)
                k++;
        }
    cout<<k;
    cin.get();
    cin.get();
    return 0;
}

Напиши первый код или на чистом С, или С++ тогда религия мне позволит исправить там ошибки
neXt
Сообщений: n/a
29.10.2009, 13:05     Найти 100 первых простых чисел #39
1. Что будет напечатанно в приведенном примере, который является частью полной программы.
int n;
n = 2;
printf ("%d + %d = %d\n", n, n + n);

2. Составте программу с использованием следующих постфиксных и префиксных операций:
a = b = 5
a + b
a++ + b
++a +b
--a + b
a-- + b

3. Составте программу печати прямоугльного треугольника из звездочек. Используя цикл for , введите переменную, значение которой является размер катета треугольника.
4.Напишие операторы Си , которые выдают строку длины WIDTH, в которой сначало содержится x0 символ '-' , затем W символ '*' , и до конца строки - вновь символы '-'.
5. Напишите программу с циклами, который рсует равнобедренный треугольник из символов *.
6. Напишите программу , печатающая целые числа от 0 до 100.
7. Напишите программу , печатающая квадраты и кубы целых чисел.
8. Напишите программу , печатающая сумму квадратов первых n целых чисел.
9. Напишите программу , которая переводит секунды в дни, часы, минуты и секунды.
10. Напишите программу , переводящая скорость из киллометров в час, в метры/ в секунду.
11. напишите программу , отгадывающая задуманное число в пределах от 1 до 200, пользуясь подсказкой с клавиатуры "=" (равно) , '<' или '>'. Для угадывания числа используйте метод деления пополам.
12. напишите программу , печатающая степени двойки.
1 , 2 , 4 , 8 , и тд.....
13. Напишите программу , распечатывающая простые числа до 1000.



Так как я новичек в этом деле , прошу вас после решения написать пояснение к программе ..! )) БУДУ ОЧЕНЬ ВАМ ПРИЗНАТЕЛЕН.....!
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.10.2009, 16:35     Найти 100 первых простых чисел
Еще ссылки по теме:

4. Найти N первых пар простых чисел, которые отличались бы друг от друга на 2 C++
Найти 10 первых натуральных чисел, оканчивающихся на цифру 7 кратных числу 9, не меньших 100 (Pascal -> C++) C++
Найти сто первых простых чисел C++

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

Или воспользуйтесь поиском по форуму:
LLLob
22 / 22 / 5
Регистрация: 21.10.2009
Сообщений: 38
29.10.2009, 16:35     Найти 100 первых простых чисел #40
Смотри, что выдаст программа:
Найти 100 первых простых чисел
Программа №13 - про простые числа:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include<windows.h>
using namespace std;
void main()
{
    SetConsoleOutputCP(1251);
    int i,j;
    bool isprime;
    cout<<"Простые числа от 2 до 1000:\n";
    for(i=2; i<1000; i++) 
    {
        isprime=true;
        for(j=2; j<=i/2; j++)
        if((i%j)==0) isprime=false;
        if(isprime)
        cout<<i<< " - простое число\n";
             }
}
Yandex
Объявления
29.10.2009, 16:35     Найти 100 первых простых чисел
Закрытая тема Создать тему
Опции темы

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