139 / 277
Feb 2018

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;
}

najpierw przeczytaj punkty od 1 do 5 z TU

czy przeczytałeś dokładnie treść zadania ?

czy przetestowałeś działanie tego programu ?

czy wynik dla danych testowych podanych w zadaniu jest taki sam jak podano w zadaniu ?

jeżeli nie wiesz jak to zrobić, sprawdź działanie twojego programu na ideone.com6

@nikt_nikogo Przeczytaj cały wątek powyżej, wszystko jest już napisane co masz źle.

Mnie ten link pod TU nie działa.

Witam mam problem z tym zadaniem. Link do mojego programu https://ideone.com/jSYrLW3
Po odblokowaniu komentarza pętla zagnieżdżona wykonuje się prawidłowo np. dla 121 % 11 zwraca wartość 0;
Natomiast warunek (liczba % j == 0) zostaje całkowicie pomijany i nie mam pomysłu dlaczego.
To dopiero moje początki z programowaniem dlatego proszę o wyrozumiałość :wink:

Zobacz takie dane:

3
9
121
23

W niektórych przypadkach (a konkretnie prawie zawsze :wink: ) za wcześnie przerywasz wewnętrzną pętlę.

Dzięki wielkie. Po wielu nieudanych próbach w końcu dopracowałem program tak, że zaakceptowało :slight_smile: