Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
kristina-lonsh
0 / 0 / 0
Регистрация: 04.03.2012
Сообщений: 61
#1

Алгоритм нахождения ПРОСТЫХ чисел в файле - C++

30.04.2012, 18:42. Просмотров 977. Ответов 2
Метки нет (Все метки)

Заполнить файл f целыми числами, полученными с помощью генератора случайных чисел. Из файла f получить файл g, оставив только ПРОСТЫЕ числа. Порядок следования чисел сохранить. При обрабоке файла не использовать массив простых чисел.

Файл у меня формирует, а вот как определить яляется ли число простым вопрос не такой простой Вот мой код:

C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include<stdlib.h>
#include<stdio.h>
int main ()
{int i,k;
FILE *fp;
FILE *gp;
if ((fp=fopen("F.DAT","w+"))==NULL) 
    {puts("No open FiLe!!\n"); 
    return 1;}
srand((unsigned)time(NULL));
for (i=0;i<20;i++)
    {k=rand()%100;
    putw(k,fp);
    }
fclose(fp);
printf("\n");
system("PAUSE");
}
Добавлено через 1 час 25 минут
Спасибо, народ честной за помощь Решила! Вот решение, быть может кому то когда то поможет:

C++ (Qt)
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
#include<stdlib.h>
#include<stdio.h>
#include<iostream>
using namespace std;
int prime(int chislo)
    {int i,flag;
    flag=1;
            for (i=2; i*i<=chislo ;i++)
            {
                if (chislo%i==0) { flag=0; break; }
            }
            if (flag) return (chislo); 
            else return 1;
    }
int main ()
{int i,k;
FILE *fp;
FILE *gp;
if ((fp=fopen("f.DAT","w+"))==NULL) 
    {puts("No open FiLe!!\n"); 
    return 1;}
srand((unsigned)time(NULL));
for (i=0;i<20;i++)
    {k=rand()%100;
    putw(k,fp);
    }
fseek(fp,0,SEEK_SET);
while ((k=getw(fp))!=EOF) printf("%d  ",k);
if ((gp=fopen("g.DAT","w"))==NULL) 
    {puts("No open FiLe!!\n"); 
    return 1;}
fseek(fp,0,SEEK_SET);
while ((k=getw(fp))!=EOF) if (prime(k)!=1) fprintf(gp,"%d \n",k);
fclose(fp);
fclose(gp);
printf("\n");
system("PAUSE");
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.04.2012, 18:42
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Алгоритм нахождения ПРОСТЫХ чисел в файле (C++):

Алгоритм нахождения простых чисел - C++
Вопросы: 1) Нужен алгоритм проверки числа (является ли число простим). Нужно чтобы алгоритм был быстрым (нужно проделать 104 операций за...

Алгоритм нахождения простых чисел - C++
Не могу найти в интернете нормальный код алгоритма нахождения простых чисел. Помогите пожалуйста. Добавлено через 2 минуты ...

Алгоритм нахождения простых чисел - C++
Не так давно начал изучать с++. Вот попытался написать программу которая вычисляет простое ли число которые вы ввели в консоль? но она...

Нахождения больших простых чисел - C++
Нахождения больших простых чисел. Реализовать программу на C++. спасибо за помощь

Программа нахождения простых чисел - C++
Я написал программу но в ней ошибка! Не пойму какая! Но мне важно понять как исправить именно эту прогу, знаю что есть другие проги на эту...

Написать программу нахождения первых 50 простых чисел - C++
Написать программу нахождения первых 50 простых чисел...Помогите пожалустно если можно то с коментариями!!

2
zitxbit
88 / 740 / 75
Регистрация: 11.04.2012
Сообщений: 971
01.05.2012, 06:09 #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 <stdio.h>
 
#include <iostream>
#include <fstream>
 
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    const char* filename[2] = { "d:\\inp.txt", "d:\\outp.txt" };
    ifstream ifs(filename[0], ifstream::in);
    ofstream ofs(filename[1], ofstream::out);
 
    while (ifs.peek() >= 0 && ifs.good())
    {
        int count = 0, value = 0; ifs>>value;
        for (int div = count+1; div <= value; div++)
            if ((value % div) == 0) count++;
        if (count <= 2) ofs<<value<<" ";
    }
 
    return 0;
}
0
kristina-lonsh
0 / 0 / 0
Регистрация: 04.03.2012
Сообщений: 61
01.05.2012, 20:36  [ТС] #3
спасибо
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.05.2012, 20:36
Привет! Вот еще темы с ответами:

Напишите программу нахождения всех трехзначных простых чисел - C++
Найти все трехзначные простые числа

Алгоритм отбора простых чисел - C++
Сижу учу С++ по Шилтду (Базовый курс) И вот папался такой алгоритм, на котором меня просто заклинило на 2 часа, так и не смог...

Эффективный алгоритм поиска простых чисел на С++ - C++
Хотел написать функцию которая вычисляет простое число или сложное, но оно не вычисляется. Цикл который я добавил в функцию не работает....

Алгоритм перебора разных комбинаций простых чисел - C++
Доброго времени суток! Решаю разнообразные задачки по программированию, попалась вот такая: Определим функцию P(n,k) следующим...


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

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

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