Elektronika i Telekomunikacja POLSL
Forum Elektroników Wydziału AEI Politechniki Śląskiej
FAQ  ::  Szukaj  ::  Użytkownicy  ::  Grupy  ::  Galerie  ::  Rejestracja  ::  Profil  ::  Zaloguj się, by sprawdzić wiadomości  ::  Zaloguj


POMOCY !!!

 
Napisz nowy temat   Odpowiedz do tematu    Forum Elektronika i Telekomunikacja POLSL Strona Główna » Semestr II / PPK
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
kleine
Tłuste zero



Dołączył: 11 Paź 2006
Posty: 32
Przeczytał: 0 tematów

Skąd: Myslowice

PostWysłany: Wto 15:36, 03 Lip 2007    Temat postu: POMOCY !!!

Kto mi pomoże zrobic/zmienic/poprawic ten program?? ;(
na jutro Razz

#define DL sizeof(prot)

#include <stdio.h>
#include <stdlib.h>


struct baza
{
int zajet;
char *imie;
char *nazwisko;
struct data;
}prot[30];

struct data
{
int dzien;
int miesiac;
int rok;
};

void dodaj();
void usun();
void szukaj();
void wyswietl();
void usunbaze();

int main(int argc, char *argv[])
{
int s;
int i;
i=0;
while(i!=6)
{
printf("1.Dodawanie Osoby\n");
printf("2.Usuwanie Osoby\n");
printf("3.Wyszukiwanie Osoby\n");
printf("4.Wyswietlenie Bazy\n");
printf("5.Wyczyszczenie Bazy\n");
printf("6.Wyjscie z Programu\n\n");
printf("Podaj nr operacji...\n\n\n");
scanf("%d",&s);
if (s!=1) && (s!=2) && (s!=3) && (s!=4) && (s!=5) && (s!=6)
printf("podany zostal zly nr operacji");
if (s==1)
dodaj;
if (s==2)
usun;
if (s==3)
szukaj;
if (s==4)
wyswietl;
if (s==5)
usunbaze;
}
system("PAUSE");
return 0;
}



void dodaj()
{
int j,k;
int data;
k=0;
for (j=0;j<DL;j++)
{
if (prot[j]==0)
{
k=j;
j=DL;
}
}
char d;
printf("Podaj Imie dodawanej osoby.\n");
gets(d);
prot[k].imie = d;
printf("Podaj Nazwisko dodawanej osoby\n");
gets(d);
prot[k].nazwisko = d;
printf("Podaj Date Urodzenia\n");
printf("Dzien:\n");
scanf("%d",&data);
if(data==0)
{
printf("bledny znak\n\n");
break;
}
prot[k].data.dzien = data;
printf("Miesiac:\n");
scanf("%d",&data);
if(data==0)
{
printf("bledny znak\n\n");
break;
}
prot[k].data.miesiac = data;
printf("Rok:\n");
scanf("%d",&data);
if(data==0)
{
printf("bledny znak\n\n");
break;
}
prot[k].data.rok = data;
prot[k].zajet=1;
printf("Osobe dodano.\n\n\n");
}
void usun()
{
char nazw;
int i,k;
k=69;
g=1;
printf("Podaj Nazwisko osoby którą chcesz usunąć\n");
gets(nazw);
for (i=0;i<DL;i++)
{
if(prot[k].nazwisko==nazw)
k=i;
if(prot[k].zajet==1)
g=0;
}
if (g=1)
printf("Baza Pusta\n\n\n");
else if (k==69)
printf("Nie Znazeliono\n\n\n");
else
{
prot[k].zajet=0;
printf("Usunieto Osobe\n\n\n");
}
}
void szukaj()
{
char nazw;
int i,k;
k=69;
printf("Podaj Nazwisko osoby ktora chcesz wyszukac\n");
gets(nazw);
for (i=0;i<DL;i++)
{
if(prot[k].nazwisko==nazw)
k=i;
}
if (k==69)
{
printf("Nie Znazeliono\n");
break;
}
printf("IMIE: %c\n",prot[k].imie);
printf("NAZWISKO: %c\n",prot[k].nazwisko);
printf("DATA URODZENIA: %2.d-%2.d-%4.d\n\n\n",prot[k].data.dzien,prot[k].data.miesiac,prot[k].data.rok);
}
void wyswietl()
{
int i,k;
k=0;
for (i=0;i<DL;i++)
{
if(prot[i].zajet==1)
{
k=1;
printf("IMIE: %c\n",prot[k].imie);
printf("NAZWISKO: %c\n",prot[k].nazwisko);
printf("DATA URODZENIA: %2.d-%2.d-%4.d\n\n\n",prot[k].data.dzien,prot[k].data.miesiac,prot[k].data.rok);
}
}
if(k==0)
printf("Baza Pusta\n\n\n");
}
void usunbaze()
{
int i,k;
k=0;
for (i=0;i<DL;i++)
{
if(prot[i].zajet==1)
{
prot[i].zajet=0;
k=1;
}
}
if (k==0)
printf("Baza pusta\n\n\n");
else
printf("Usunieto baze\n\n\n");
}
Powrót do góry
Zobacz profil autora
chmurli
ELEKTRONIK - on już ciągnie druty



Dołączył: 16 Paź 2006
Posty: 400
Przeczytał: 0 tematów

Skąd: /dev/null

PostWysłany: Wto 17:16, 03 Lip 2007    Temat postu:

geez, chyba latwiej juz by bylo napisac ten kod od nowa ;d
ale spoko posiedze jeszcze troche nad tym, moze sie uda to doprowadzic do skladu
Powrót do góry
Zobacz profil autora
chmurli
ELEKTRONIK - on już ciągnie druty



Dołączył: 16 Paź 2006
Posty: 400
Przeczytał: 0 tematów

Skąd: /dev/null

PostWysłany: Wto 19:30, 03 Lip 2007    Temat postu:

tyle udalo mi sie zrobic, w komentarzach przy funkcjach masz co nie dziala (moze to by wina mojego kompilatora)

Cytat:
#define DL 50

#include <stdio.h>
#include <stdlib.h>

struct data_struct {
int dzien;
int miesiac;
int rok;
};

struct baza {
int zajet;
char *imie;
char *nazwisko;
struct data_struct data;
};

struct baza prot[50];

void dodaj();
void usun();
void szukaj();
void wyswietl();
void usunbaze();





int main()
{

char s;
short exit=1;


while(exit) {
system("cls");

printf("1.Dodawanie Osoby\n");
printf("2.Usuwanie Osoby\n");
printf("3.Wyszukiwanie Osoby\n");
printf("4.Wyswietlenie Bazy\n");
printf("5.Wyczyszczenie Bazy\n");
printf("6.Wyjscie z Programu\n\n");
printf("Podaj nr operacji...\n\n\n");

s=getch();

switch(s) {

case '1':
dodaj();
break;
case '2':
usun();
break;
case '3':
szukaj();
break;
case '4':
wyswietl();
break;
case '5':
usunbaze();
break;
case '6':
exit=0;
break;
}


}

system("cls");
system("PAUSE");
return 0;



}


// COS SIE WALI Z IMIENIEM I NAZWISKIEM przy dluzszycg nazwach
void dodaj() {
int j,k;
int data;
k=0;

for (j=0; j<DL; j++) {
if (!prot[j].zajet){
k=j;
j=DL;
}
}


printf("Podaj Imie dodawanej osoby.\n");
scanf("%s", &prot[k].imie);

printf("Podaj Nazwisko dodawanej osoby\n");
scanf("%s", &prot[k].nazwisko);


printf("Podaj Date Urodzenia\n");


printf("Dzien:\n");
scanf("%d",&data);
if(data==0) {
printf("bledny znak\n\n");
} else
prot[k].data.dzien = data;

printf("Miesiac:\n");
scanf("%d",&data);
if(data==0){
printf("bledny znak\n\n");
} else
prot[k].data.miesiac = data;

printf("Rok:\n");
scanf("%d",&data);
if(data==0){
printf("bledny znak\n\n");
} else
prot[k].data.rok = data;

prot[k].zajet=1;
printf("Osobe dodano.\n\n\n");


getchar();
getchar();
}


// COS CHYBA NIE DZIALA
void usun(){
char nazw;
int i,k, g;
k=-1;
g=0;
printf("Podaj Nazwisko osoby ktora chcesz usunac\n");
scanf("%d", &nazw);

for (i=0;i<DL;i++) {
if(prot[i].nazwisko==nazw) {
k=i;
}

if(prot[i].zajet==1) {
g=1;
}
}

if (g==0) {
printf("Baza Pusta\n\n\n");
} else {
if (k==(-1)) {
printf("Nie Znazeliono\n\n\n");
} else {
prot[k].zajet=0;
printf("Usunieto Osobe\n\n\n");
}
}

getchar();
getchar();
getchar();
}



// U MNIE CRASH, NIE WIEM CZEMU
void szukaj() {
char nazw;
int i,k=(-1);
printf("Podaj Nazwisko osoby ktora chcesz wyszukac\n");
scanf("%s", &nazw);
for (i=0;i<DL;i++) {
if(prot[i].nazwisko==nazw)
k=i;
break;
}

if (k==(-1)) {
printf("Nie Znazeliono\n");
} else {

printf("IMIE: %s\n", &prot[k].imie);
printf("NAZWISKO: %s\n", &prot[k].nazwisko);
printf("DATA URODZENIA: %2.d-%2.d-%4.d\n\n\n",prot[k].data.dzien,prot[k].data.miesiac,prot[k].data.rok);
}


getchar();
getchar();
}


// DZIALA OK
void wyswietl() {
int i,k;
k=0;

for (i=0;i<DL;i++) {
if(prot[i].zajet){
k=1;
printf("IMIE: %s\n", &prot[i].imie);
printf("NAZWISKO: %s\n", &prot[i].nazwisko);
printf("DATA URODZENIA: %2.d-%2.d-%4.d\n\n\n",prot[i].data.dzien,prot[i].data.miesiac,prot[i].data.rok);
}
}

if(k==0)
printf("Baza Pusta\n\n\n");

getchar();
getchar();
}


//DZIALA OK
void usunbaze() {
int i,k;
k=0;

for (i=0;i<DL;i++) {
if(prot[i].zajet){
prot[i].zajet=0;
k=1;
}
}

if (!k)
printf("Baza pusta\n\n\n");
else
printf("Usunieto baze\n\n\n");


getchar();
}








Powrót do góry
Zobacz profil autora
Longer
Tłuste zero



Dołączył: 23 Lut 2007
Posty: 57
Przeczytał: 0 tematów

Skąd: Zabrze

PostWysłany: Wto 19:57, 03 Lip 2007    Temat postu:

Ech, no i teraz nie wiem, czy sprawdzić twoje, czy dokończyć ten bajzel który już zacząłem... Smile
Powrót do góry
Zobacz profil autora
Longer
Tłuste zero



Dołączył: 23 Lut 2007
Posty: 57
Przeczytał: 0 tematów

Skąd: Zabrze

PostWysłany: Wto 21:57, 03 Lip 2007    Temat postu:

Wybrałem opcje kończenia poprawiania pierwotnego kodu jednak utknąłem na funkcji szukaj. Jeżeli będzie to jeszcze potrzebne to postaram się dokończyć to jutro.
Powrót do góry
Zobacz profil autora
kleine
Tłuste zero



Dołączył: 11 Paź 2006
Posty: 32
Przeczytał: 0 tematów

Skąd: Myslowice

PostWysłany: Wto 22:09, 03 Lip 2007    Temat postu:

wielkie dzieki za chec i za pomoc przeciez to juz ostatni dzien sesji a co do skonczenia to i tak odwaliliscie juz duza robote a jak skonczycie i usuniecie te ostatnie błedy to bedzie niebo :]

acha a programik na jutro na 9 :]
Powrót do góry
Zobacz profil autora
Wyświetl posty z ostatnich:   
Napisz nowy temat   Odpowiedz do tematu    Forum Elektronika i Telekomunikacja POLSL Strona Główna » Semestr II / PPK Wszystkie czasy w strefie CET (Europa)
Strona 1 z 1

 
Skocz do:  
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
  ::  
fora.pl - załóż własne forum dyskusyjne za darmo
Powered by phpBB © 2001, 2005 phpBB Group   ::   template subEarth by Kisioł. Programosy   ::  
Regulamin