Skocz do zawartości

Smash

Stały użytkownik
  • Postów

    100
  • Dołączył

  • Ostatnia wizyta

Odpowiedzi opublikowane przez Smash

  1. Witam!

    Otoz od pewnego czasu mam pewien problem.

    Od czasu do czasu nastepowały samoistne restarty, nieco czesciej były problemy z uruchamianiem. NIe ładował sie nawet bios.

    Przewaznie, rozkrecałem obudowe sprawdzalem wiatrak na procesorze, sprawdzałem czy pamieci dobrze sa wpięte w banki , zasilanie dysków itp.

    Przewaznie pomagało

     

    Dzis jest gorzej. Wyglada jakby komp zdechł. Sprawdzalem juz wszystko z 5 razy. Przekładalem pamieci do roznch bankow, odpinałem kolejne napedy i stacje dysków, nic nie pomaga.

    Wykluczam zasilacz, poniewaz przełozyłem go do innego komputera i wszystko działa.

     

    Sam juz nie wiem co sie spieprzyło.

    Możecie jakoś doradzić co jeszcze moge sprawdzić , na co zwrocic uwage. Moze gdzies nastąpiło jakieś zwarcie?

     

    pozdrawiam

     

    komp

    #Soltek SL-86SPE-L

    #Intel Pentium 4HT 2400MHz Northwood

    #2x256MB 400Mhz DDR Dual

    #Seagate Barracuda 80GB 7200

    #Gaindward GeForce FX 5200 128Mb

    #Lite-On 48x24x48

    #Pioneer DVDROM

    #LG Flatron L1510S

    #Logitech DualOptic

    #Logitech Z-640

    #HP DeskJet 710C

  2. Witam!

    Napisałe f-cje która przeszukuje liste 2-kierunkowa pod katem nazwiska

    Gdy znajdzie zwraca wskaznik do rekordu

     

    data *find_nazwisko(struct data* wsk, struct data *pocz, char *szukaj){	  wsk=pocz;	  do	  {		 if(strcmp(wsk->nazwisko,szukaj)==0)			return wsk;		 else		 wsk=wsk->nastepny;	  }while(wsk!=NULL);}

    Pytania brzmią

    1. W jaki sposob zrobić tak aby w momencie gdy na liscie beda dwa takie same nazwiska f-cja zwrociła oba wskazniki ? Po napotkaniu pierwszego jak na razie nastepuje wyjscie z fcji.

    2. Założmy ze chcemy wyswietlic wszystkie nazwiska na K lub zaczynajace sie na 'Ka' jak to zrobić ?

  3. Witam!

    Stworzyłem liste dwukierunkową.

    Usuwanie wpisu odbywa za pomoca kursora

    http://www.toya.net.pl/~crisu/wpis.jpg

     

    Problem jest tylko taki

    Zrobiłem zabezpieczenie które sprawia, że uzytkownik nie moze wyjechac kursorem poza liste.

    Problem jednak jest w momencie gdy ktoś bedzie próbował sie "przebić' za ostatni element a nastepnie sprobuje usunac element np 2. Nastepuje tzn wysyp programu

     

    data *wypisz_usuwaj(struct data *wsk, struct data *pocz, struct data *kon){	data *uwsk;	uwsk=pocz;	char strzalka;	int x=2;	int y=4;	if(pocz==NULL)	{		  gotoxy(20,12);printf("Lista jest pusta!");		  gotoxy(20,15);printf("Nacisni cos......!");		  getch();		  menu();	}	else	{		gotoxy(x,y);printf("->");		int i=0;		wsk=pocz;					do			{			gotoxy(5,2);printf("Imie");gotoxy(27,2);printf("Nazwisko");gotoxy(47,2);printf("Telefon");gotoxy(57,2);printf("Data urodzenia");			gotoxy(5,i+4);printf("%s",wsk->imiona);			gotoxy(27,i+4);printf("%s",wsk->nazwisko);			gotoxy(47,i+4);printf("%d",wsk->telefon);			gotoxy(57,i+4);printf("%d",wsk->urodziny);			wsk=wsk->nastepny;			i++;			}while(wsk!=NULL);		while(strzalka!=27)		{		strzalka=getch();			switch(strzalka)			{			case 80: // down				if((y>i+2))				y=i+2;				y++;				if(uwsk==kon)					uwsk->nastepny=uwsk;				uwsk=uwsk->nastepny;				gotoxy(x,y);				printf("->");				gotoxy(x,y-1);				printf("  ");				break;					case 72: //up				if(y<5)				y=5;				y--;				if(uwsk==pocz) //zabezpieczenie - wyjscie przed liste					uwsk->poprzedni=uwsk;				uwsk=uwsk->poprzedni;				gotoxy(x,y);				printf("->");				gotoxy(x,y+1);				printf("  ");				break;			case 13:				return uwsk;				break;			}		}			}return NULL;}

    wywołanie

     

    wsk3=wypisz_usuwaj(wsk,poczatek,koniec);	 if(wsk3!=NULL)	   usun(wsk3,&poczatek,&koniec);

    wsk3 to wskazni na strukture.

     

    kod

    http://www.toya.net.pl/~crisu/LISTA2.CPP

     

    exe

    http://www.toya.net.pl/~crisu/LISTA2.exe

     

    Aby obrazowo zobaczyc problem:) Najlepiej pobrac exe, stworzyc 3 wyrazy. ponaciskac troche strzałke w dół a nastepnei usunac element 2 i wyswietlic całosc:)

  4. Witam!

    Otóż pisze sobie liste dwukierunką i stanąłem w jednym miejscu.

    Lista wyświetlać się bedzie tak :

     

     

    Dołączona grafika

     

     

     

    Strzałką bedziemy mogli operować sami natomiast wpisy beda wyswietla automatycznie po "n" na stronie.

    Pytanie brzmi jak połaczyc pozycje strzałki i wpisu tak aby po nacisnieciu jakiegos klawiasza dany wpis był np usuwany.

    NIe chodzi mi o f-cje usuwania tylko samego powiazania kursura i danej

  5. Witam!

    Mam taka oto strukture:

     

    struct data{	   int  numer;	   char nazwisko[80];	   char imiona[80];	   int urodziny;	   int telefon;	   data *nastepny;	   data *poprzedni;};

    Chciałbym ją zapisać do pliku txt:)

    Problem jest taki, że zawieta ona dwa wskaźniki które utrudniają sprawe.

    Czy da się zrobić, tak aby zapisać same dane ? Jeżeli tak to prosze o jakis przykład.

     

    Nie chce tworzyć drugiej struktury która bedzie zawierać owe wskaźniki , gdyż spowodowałoby to koniecznosc przerobienia całego programu.

  6. ok

    include<conio.h>#include<stdio.h>#include<stdlib.h>#include<string.h>void zapis(struct data *wsk);void menu();struct data{	char nazwisko[80];	char imiona[80];	int urodziny;	int telefon;	data *nastepny;	data *poprzedni;};main(){data *wsk;data *wsk2;data *wsk3;data *poczatek;data *koniec;poczatek=NULL;koniec=NULL;char znak;int end=0;menu();	 do	 {		znak=getch();		if( (znak==0) )		{			znak=getch();			system("cls");			switch(znak)			{			case 59: //F1			wsk=new data;			zapis(wsk);				if(!poczatek)				{				poczatek=wsk;				koniec=wsk;				wsk->nastepny=NULL;				wsk->poprzedni=NULL;				wsk2=wsk;				}				else	 //tworze nastepny wsk				{				wsk2->nastepny=wsk;				wsk->nastepny=NULL;				wsk->poprzedni=wsk2;				koniec=wsk;				wsk2=wsk;				}				break;			case 60:				wsk3=poczatek; //wskaznik na poczatek(head);				do				{				  printf("%s\n", wsk3->nazwisko);				  printf("%s\n", wsk3->imiona);				  printf("%d\n", wsk3->urodziny);				  printf("%d\n", wsk3->telefon);				  wsk3=wsk3->nastepny; //wskazuje na *nastepny ktory wskazuje na nastepny elemnt				}				while(wsk3!=NULL);				  break;			}		}		else if (znak==27)		end=1;	 }	 while(!end);return 0;}void zapis(struct data *wsk){	printf("Wpisz imiona: ");		fgets(wsk->imiona,80,stdin);	printf("\nPodaj nazwisko: ");		fgets(wsk->nazwisko,20,stdin);	printf("\nPodaj numer telefonu: ");		scanf("%d",&wsk->telefon);	printf("\nPodaj date urodzin: ");		scanf("%d",&wsk->urodziny);}void menu(){//	clrscr();	system("cls");	printf("\tF1 - Utworz nowy wiersz\n");	printf("\tF2 - Wyswietl liste\n");	printf("\tESC - KONIEC\n");}
  7. Witam!

     

    Kumpela ma następujący kłopot. Po jej przyjeździe jak sama stwierdziła przestał działać dźwięk.

    Dziś sprawdziłem sprawe i faktycznie nic nie gra

    (zero dźwięku w samym XP). Z głośników wydobywa się jedynie jakiś szum przy podkręceniu głośności:/

     

    Wszystko idzie z Ac97 zintegrowanego na płycie MSI KT6V Via KT600. Głośniki zwykłe 2.0

     

    Na początek sprawdziłem zakładke głośności systemu oraz ustawienia Ac97. Wszystko ok.

    W biosie również chipset włączony.

    Postanowiłem sprawdzić same głośniki. Po podłaczeniu do walkmana niestety działały.

    W samych systemowych zakładach grzebałem z godzine.

    Ostatnio czynnością była re-instalacja sterowników która również nic nie dała.

     

    Reszta sprzętu

    Athlon XP2000+

    512 MB

    WD 80 GB

    GF 2

     

    pozdrawiam

×
×
  • Dodaj nową pozycję...