133 / 277
Jan 2018

Nie mam pojęcia już czemu… jakieś podpowiedzi nie liczę na rozwiązanie lecz na dobry kierunek…

– kod usunięto –

Wkleiłeś kod w taki sposób że trudno go analizować, oczywiście post jest w złym miejscu i niezgodnie z regulaminem, ale wg mnie nieprawidłowo definiujesz tablicę dynamiczną.

Faktycznie wrzucilem deklarowanie do maina… dodalem jeszcze do warunku ze a>0 i poszlo . Dziekuje tarpauwatratar:)

Wydaje mi się, że kod działa, jednak nie jest akceptowany. Gdzie leży przyczyna?

`#include

using namespace std;

int main()
{
int n, d;
cin>>d;
for(int j=1; j<=d; j++)
{
while(cin >> n)
{

    if(n==1){
        
        break;
    }
    bool pierwsza = true;
    for(int i=2; i*i<=n; i++)
    {
        if(n%i==0){ 
            pierwsza = false;
        }
    }

if(pierwsza==true){
    cout << "TAK" << endl;
}
else{
    cout << "NIE" << endl;
}
}
}
return 0;

}`

Albo źle przekopiowałeś albo na samym początku nie masz “#include” - nie dodałeś biblioteki chociażby w celu użycia cin/cout. Używaj ideone. Na pierwszy rzut oka widać, że twoja pętla jest źle wykonana. Sprawdź dodatkowo co się stanie jak wprowadzisz 0 albo 1 jako liczbę do sprawdzenia.

Bardzo dziekuje, po dodaniu biblioteki i cout “NIE” dla wartosci <=1 kod zaakceptowany:)

Możesz przyspieszyć program (jeśli używasz cin i cout, a nie scanf i printf) dodając na początku funkcji main() dwie linijki kodu, a mianowicie: cin.tie(NULL);ios_base::sync_with_stdio(0);
Mi się udało w ten sposób zejść z 0.16s do 0.01 :wink:

Jestem tu nowy i niestety napotkałem problem przy pierwszym zadaniu. Niestety nie wiem czemu program mi nie działa. Jeśli ktoś mógł by mi podpowiedzieć co robię nie tak bym był wdzięczny

to może po prostu popatrz na wynik testu podany w zadaniu i na wynik twojego programu
albo jeszcze raz przeczytaj dokładnie treść zadania

z przeprowadzonych testów za każdym razem wyrzuca mi prawidłową odpowiedź dlatego nie wiem czemu nie chce mi przejść

Nie wyrzuca. W zasadzie nie masz ani jednej prawidłowej odpowiedzi. Przypatrz się uważnie - co masz wyświetlić, a co wyświetlasz.

Coś się chyba źle skopiowało. Wszystkie odp są prawidłowe więc wklejam rezultat. Może jest jakiś problem z wklejaniem.

Czy jeżeli będę trzecią osobą, która powie Ci, że Twój output jest różny od outputu w treści zadania, poprawisz oczywisty błąd?

cZWARTY, tzn czwarty, a może cZwArTy albo CzWaRtY albo Czwarty a jeżeli Ci nie [z]robi różnicy to może nawet CZWARTY! :wink:

Z treści przecież wynika że jeśli liczba jest pierwsza to wyjście jest Tak a jeśli nie jest pierwsza to wyjście Nie. Można jaśniej a później pośmieje się z wami.

Dla każdej liczby słowo TAK …

Czxy TAK == Tak czy NIE czy Nie czy nie?

PS
sorry, za ; - ), ale nie był źłośliwy :wink:

Ech język polski mnie przytłacza :slight_smile: poprawiłem i nadal mi nie przechodzi może jeszcze jedna podpowiedź

Ale co?
Dalej masz “Nie” i “Tak” zamiast “NIE” i “TAK”.

Użyj wszędzie: “NIE” i “TAK”

a nie: “Nie” i “Tak”

Dzięki nigdy bym tego nie zauważył. Myślałem że to coś poważniejszego

1 month later
#include <iostream>

using namespace std;
int liczba,tak_nie;
int main()
{
    cout << "Czy podana liczba jest pierwsza" << endl;
    cin>>liczba;
    if(liczba==3)
    {
    tak_nie=0;
    }
    if(liczba==1)
    {
    tak_nie=1;
    }
    for(int i=2;i<=liczba/2;i++)
    {
    if(liczba%i!=0)
    {
    tak_nie=0;
    }
    else
    {
    tak_nie=1;
    break;
    }
    }
    if(tak_nie==0) cout<<"Tak"<<endl;
    if(tak_nie==1) cout<<"Nie"<<endl;
    return 0;
}