Nefunguje program – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Nefunguje program – C / C++ – Fórum – Programujte.comNefunguje program – C / C++ – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené — příspěvek s řešením.
Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
dragon124-10
Stálý člen
5. 8. 2012   #1
-
0
-

Dobrý den,

Napsal jsem program který má vypsat první 2 000 000 000 prvočísel do souboru.

#include <stdio.h>
#define SOUBOR "prvo.cisla"

int main(void){

  long int prvocislo=0;
  long long int cislo=11;

  FILE *f;
  f=fopen(SOUBOR, a+); //pointer f is open file "prvo.cisla"

  fprintf(f, "2\n3\n5\n7\n");

  while(prvocislo<2000000000){

    if(cislo%3 == 0 | cislo%5 == 0 | cislo%7 == 0){
      goto neni;
    }else{
      fprintf(SOUBOR, "%d\n", cislo);
  }
  neni:
  cislo += 2;
  ++prvocislo;
}

Prosím poraďte, programuji v g++ pod linuxem. Píše to tyto chyby

prvocisla.cpp: In function ‘int main()’:
prvocisla.cpp:10:19: error: ‘a’ was not declared in this scope
prvocisla.cpp:10:21: error: expected primary-expression before ‘)’ token
prvocisla.cpp:19:36: error: cannot convert ‘const char*’ to ‘FILE* {aka _IO_FILE*}’ for argument ‘1’ to ‘int fprintf(FILE*, const char*, ...)’

Předem děkuji za všechny odpovědi které mi alespoň trochu pomohou

Nahlásit jako SPAM
IP: 89.235.32.–
Reklama
Reklama
Řešení
jano
~ Anonymní uživatel
53 příspěvků
5. 8. 2012   #2
-
0
-
Vyřešeno Nejlepší odpověď

prva chyba

riadok 19 chybajuce uvodzovky

f=fopen(SOUBOR, "a+");

druha riadok 36 namiesto SUBOR f

fprintf(f, "%d\n", cislo);

jednoduchsie by bolo keby si cital chybove hlasky a pozrel co na to hlasi a co mas na danom riadku...

inak cisla ktore su nesudelitelne s 2, 3, 5, a 7 niemusia byt prvocisla. a este tam je logicka chyba to ++prvocisloô by asi malo byt ak je prvocislo ak nie tak sorry :)

Nahlásit jako SPAM
IP: 85.135.146.–
dragon124-10
Stálý člen
5. 8. 2012   #3
-
0
-

Děkuji, fungovalo to, ale udělalo to 60 GIGA velkej soubor :D

Nahlásit jako SPAM
IP: 89.235.32.–
host
~ Anonymní uživatel
17 příspěvků
5. 8. 2012   #4
-
0
-

nechci se hádat, ale nemyslím že ten program fungoval, natož aby vytvořil nějaký soubor. myslím že ani nešel zkompilovat

Nahlásit jako SPAM
IP: 88.102.250.–
vitamin+8
Grafoman
5. 8. 2012   #5
-
0
-

Suhlasim s janom, tie chybove hlasky ti v tomto pripade presne ukazu kde mas chybu (minimalne 1 a 3 by si mal sam zvladnut)

Ten test na prvocislo je zly.

Skus si vygooglit klucove slovo  'break'.

Nahlásit jako SPAM
IP: 95.105.157.–
obfuscate: "The cruel god Malloc will strike you down. "
ZMeson: "That's the C god. C++ has a new god. "
Atheo+4
Stálý člen
5. 8. 2012   #6
-
+1
-
Zajímavé

#1 dragon124
promin ale pokud chces programovat stylem nepremyslet a vytvaret nesmyslne programy ktere posles nejakemu kamaradovi a vytvori to udajne soubor o velke kapacite aby ty jsi se zasmal jak to bylo uzasne a ani si nedokazes precist -> tak je mi te lito ;)

prvocisla.cpp: In function ‘int main()’:
prvocisla.cpp:10:19: error: ‘a’ was not declared in this scope
prvocisla.cpp:10:21: error: expected primary-expression before ‘)’ token
prvocisla.cpp:19:36: error: cannot convert ‘const char*’ to ‘FILE* {aka _IO_FILE*}’ for argument ‘1’ to ‘int fprintf(FILE*, const char*, ...)’

btw to co si napsal je C nikoli Cpp pokud se nepletu ;)

Nahlásit jako SPAM
IP: 188.175.140.–
dragon124-10
Stálý člen
5. 8. 2012   #7
-
0
-

nechci nic říkat, ale programoval jsem to pouze pro běh na mém počítači a proto, že jsem potřeboval nějaká prvočísla

Nahlásit jako SPAM
IP: 89.235.32.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 100 hostů

Podobná vlákna

Program nefunguje — založil dragon124

Sestavený program nefunguje — založil Jelec

Nefunguje program (Céčko) — založil Tadeáš Abraham

Program po startu windows nefunguje — založil blackman.ce

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý