Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Wyszukiwanie piątków trzynastego

Ostatnio zmodyfikowano 2011-12-20 17:18
Autor Wiadomość
ania653
Temat założony przez niniejszego użytkownika
Wyszukiwanie piątków trzynastego
» 2011-12-19 23:47:14
Witam!
Mam ogromny problem :/ Jestem na pierwszym roku budownictwa i mam napisać program ,który wypisze mi trzy piątki trzynastego od podanej wcześniej daty , a ja jestem blondynką(w programowaniu)!!Pomimo przeczytania kursu ,ale gubię się w pierwszym stopniu :/  Znalazłam w internecie jakiś programik co wypisuje na podstawie daty podanej , dzien tygodnia,czyli jeszcze brakuje mi jakiejś pętli czy czegoś podobnego .Poza tym wydaje mi się ,że trzeba usunąć z tego programu poniżej jakieś nie potrzebne rzeczy aaaaa... i ten program poniżej coś się sypie przy string Pomożecie :-)
C/C++
#include "stdio.h"
string * tydzien[] = { "poniedzialek", "wtorek", "sroda", "czwartek", "piatek", "sobota", "niedziela" };
int liczbaDni[] =
{ 0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334 };
int przestepny( int rok ) {
    return(( rok % 4 == 0 && rok % 100 != 0 ) || rok % 400 == 0 );
}
int dzienTygodnia( int dzien, int miesiac, int rok ) {
    int dzienRoku;
    int yy, c, g;
    int wynik;
    dzienRoku = dzien + liczbaDni[ miesiac - 1 ];
    if(( miesiac > 2 ) &&( przestepny( rok ) == 1 ) )
         dzienRoku++;
   
    yy =( rok - 1 ) % 100;
    c =( rok - 1 ) - yy;
    g = yy +( yy / 4 );
    wynik =((((( c / 100 ) % 4 ) * 5 ) + g ) % 7 );
    wynik += dzienRoku - 1;
    wynik %= 7;
    return wynik;
}
int main() {
    int m, r, d, wynik;
    printf( "Podaj od jakiej daty znajsc trzy nasptepne piatki trzynastego.\n" );
    printf( "Podaj dzien:\n" );
    scanf( "%d", & d );
    printf( "Podaj miesiac:\n" );
    scanf( "%d", & m );
    printf( "Podaj rok:\n" );
    scanf( "%d", & r );
    wynik = dzienTygodnia( d, m, r );
    printf( "Dzien tygodnia dla podanej daty to %s.\n", tydzien[ wynik ] );
    getch();
    return 0;
}
P-45904
DejaVu
» 2011-12-20 07:42:01
Za dużo by tłumaczyć...
C/C++
#include <cstring>
#include <clocale>
#include <cstdio>
#include <ctime>

time_t dajCzas( int dzien, int miesiac, int rok )
{
    tm czas;
    ::memset( & czas, 0, sizeof( czas ) );
    czas.tm_year = rok - 1900;
    czas.tm_mon = miesiac - 1;
    czas.tm_mday = dzien;
    czas.tm_hour = 12;
    return::mktime( & czas );
}

void wyswietlDate( const tm & dane )
{
    char bufor[ 64 ];
    strftime( bufor, sizeof( bufor ), "%#x (%A)", & dane );
    printf( "%s\n", bufor );
}

#define DLUGOSC_DNIA 3600*24

int main()
{
    ::setlocale( LC_ALL, "Polish" );
    time_t czas = dajCzas( 13, 10, 2011 );
    for( long znaleziono = 0; znaleziono < 3; czas += DLUGOSC_DNIA )
    {
        tm data = *::localtime( & czas );
        if( data.tm_wday == 5 && data.tm_mday == 13 )
        {
            wyswietlDate( data );
            znaleziono++;
        } //if
    } //for
    return 0;
}

Kursy
Funkcje - pierwsze starcieRozdział 17. Co to są funkcje i jak się z nich korzysta. (lekcja)
Funkcje, a słowo kluczowe returnRozdział 20. Jak działa słowo kluczowe return w funkcjach i jakie są praktyczne zalety z właściwego używania wspomnianego słowa kluczowego. (lekcja)
Pętla forRozdział 22. Omówienie pętli
for
. (lekcja)
Przekazywanie argumentów funkcji przez referencjęRozdział 24. W niniejszej lekcji omówiono znaczenie słowa referencja oraz wyjaśniono działanie referencji w argumentach funkcji. (lekcja)

Dokumentacja
mktimeKonwertuje strukturę » standard Ctm do » standard Ctime_t. (funkcja)
localtimeKonwertuje » standard Ctime_t na strukturę » standard Ctm wyrażoną w » Dokumentacjaczasie lokalnym. (funkcja)
tmPrzechowuje składowe daty i czasu w postaci liczb. (struktura)
time_tLiczba całkowita, reprezentująca czas wyrażony w sekundach. (alias)
memsetWypełnia pamięć bajtem. (funkcja)
strftimeKonwertuje strukturę » standard Ctm na dowolnie sformatowaną datę lub czas. (funkcja)
P-45910
ania653
Temat założony przez niniejszego użytkownika
» 2011-12-20 14:07:55
Wielkie dzięki ,ale nie chodziło mi o to .Ten program powyżej odczytuje datę z systemu , a ja mam wpisać mu sama ,:(
P-45938
DejaVu
» 2011-12-20 14:13:18
Cóż... udam, że Twojego posta nie czytałem...
P-45940
malan
» 2011-12-20 14:13:50
P-45941
ania653
Temat założony przez niniejszego użytkownika
» 2011-12-20 15:53:03
Yyyyy... nie wiem jak wyrzucić zbytnio mam z kodu, kod odczytujący z systemu datę ;(
P-45947
DejaVu
» 2011-12-20 17:18:39
W zasadzie to tracisz nasz czas. Nie znasz nawet podstaw programowania co oznacza, że czekasz na gotowca. Temat zamykam. Dostałaś szeroką lekturę i rozwiązanie praktycznie rzecz biorąc też. Jak się nie wie nic to najlepiej zacząć od początku, a początek znajdziesz tu: » KursyKurs C++ kurs.
P-45948
« 1 »
  Strona 1 z 1