Twoje PC  
Zarejestruj się na Twoje PC
TwojePC.pl | PC | Komputery, nowe technologie, recenzje, testy
B O A R D
   » Board
 » Zadaj pytanie
 » Archiwum
 » Szukaj
 » Stylizacja

 
M E N U
  0
 » Nowości
0
 » Archiwum
0
 » Recenzje / Testy
0
 » Board
0
 » Rejestracja
0
0
 
Szukaj @ TwojePC
 

w Newsach i na Boardzie
 
OBECNI NA TPC
 
 » Liu CAs 17:25
 » rooter666 17:25
 » Kenny 17:24
 » PaKu 17:23
 » KHot 17:22
 » Pawelec 17:18
 » Paweł27 17:12
 » alkatraz 17:06
 » Sherif 17:05
 » DJopek 17:04
 » Wedelek 17:04
 » ligand17 17:02
 » soyo 16:59
 » AfiP 16:59
 » Wojtekar 16:58
 » Ramen 16:57
 » muerte 16:55
 » yeger 16:54
 » john565 16:53
 » rarek 16:52

 Dzisiaj przeczytano
 41128 postów,
 wczoraj 25974

 Szybkie ładowanie
 jest:
włączone.

 
ccc
TwojePC.pl © 2001 - 2024
A R C H I W A L N A   W I A D O M O Ś Ć
    

Program w c, zabezpieczenie przed wpisywaniem nie tego co trzeba.. , coolman 22/01/07 16:42
Witam!
Robie na zaliczenie program w c. Potrzebuje przerobic ten na dole tak aby mozna bylo wpisywac tylko cyfry..zadnych innych znakow. Po wpisaniu znaku innego niz cyfra powinien najlepiej najlepiej znowu zapytac o cyfre.
Kod wyglada tak:


----------------$----------------
#include <stdio.h>
#include <conio.h>
#include <windows.h>
#include <math.h>

float a,b,c,d,x,delta,x1,x2;
int i,ii;
char key;

void kolory(int kol,int tlo)
{
textcolor(kol);
textbackground(tlo);
}

void tytul(void)
{
kolory(1,7);clrscr();
gotoxy(25,2);cprintf("Rozwiazywanie rownan typu:");
kolory(7,1);
gotoxy(28,3);cprintf("a(x*x) + bx + c=0,");
kolory(1,7);
gotoxy(22,4);cprintf("dla dowolnych, rzeczywistych a,b,c.");
}

void wczytanie_danych(void)
{
kolory(5,7);
gotoxy(3,7);cprintf("Podaj:");
gotoxy(10,8);cprintf("a= "); cscanf("%f",&a);
gotoxy(10,9);cprintf("b= "); cscanf("%f",&b);
gotoxy(10,10);cprintf("c= "); cscanf("%f",&c);
}

void miejsce_odp(void)
{
for(i=1; i<11;i++)
{kolory(7,5); gotoxy(20,6+i); cprintf(" ");}
}

void ODP1(void)
{
kolory(7,5); gotoxy(33,9);cprintf(" Tozsamosc,");
gotoxy(23,11);cprintf("rozwiazaniem kazde x rzeczywiste.");
}

void ODP2(void)
{
kolory(7,5); gotoxy(33,9); cprintf("Sprzecznosc,");
gotoxy(32,11); cprintf("brak rozwiazan.");
}

void ODP3(void)
{
kolory(7,5); gotoxy(31,9); cprintf("Rownanie liniowe,");
d=-c/b; if(d==0) d=0;
gotoxy(34,11); cprintf("x =%8.4f\a",d);
}

void ODP4(void)
{
kolory(7,5);gotoxy(30,9); cprintf("Rownanie kwadratowe,");
gotoxy(29,11); cprintf("rozwiazania zespolone:");

gotoxy(28,13);cprintf("x1 =%8.4f",-b/(2*a));
d=sqrt(fabs(delta))/(2*a);
gotoxy(41,13); cprintf(" -j*%7.4f",sqrt(fabs(delta))/(2*a));
gotoxy(28,15);cprintf("x2 =%8.4f",-b/(2*a));
gotoxy(41,15); cprintf(" +j*%7.4f",sqrt(fabs(delta))/(2*a));
}

void ODP5(void)
{
kolory(7,5);gotoxy(16,10); cprintf("Rownanie kwadratowe,");
gotoxy(17,11); cprintf("jedno rozwiazanie rzeczywiste:");
gotoxy(27,13); cprintf("x1 = x2 = ",-b/(2*a));
}

void ODP6(void)
{
kolory(7,5);gotoxy(30,9); cprintf("Rownanie kwadratowe,");
gotoxy(28,11); cprintf("rozwiazania rzeczywiste:");
gotoxy(35,13); cprintf("x1=%8.4f",(-b-sqrt(delta))/(2*a));
gotoxy(35,15); cprintf("x2=%8.4f",(-b+sqrt(delta))/(2*a));
}

void pytanie_dec(void)
{
i=0; do {key=toupper(getche());
kolory(9+i %5,7); gotoxy(62,24); cprintf("Powtarzamy(T/N)?"), i++;
}while(!((key=='N')||(key=='T')));
}


int main(int argc, char* argv[])
{
do{
tytul();
wczytanie_danych();
miejsce_odp();
if(a==0)
if(b==0)
if(c==0) ODP1();
else ODP2();
else ODP3();
else
{ delta=b*b-4*a*c;
if(delta<0) ODP4();
else
if(delta==0) ODP5();
else ODP6();
};
pytanie_dec();
}while(!(key=='N'));

return 0;
}


----------------$----------------

http://jet.blog.pl

  1. UWAGA MALA POPRAWKA :P , coolman 22/01/07 17:00
    ...program ktory pobiera tylko cyfry z klawiatury :P ten co wkleilem jest nie aktualny. Reasumujac podsuncie mi pomysl jak podczas wczytywania danych pobierac tylko cyfry ? Czyli zrobic zabezpieczenie przed wpisywaniem literek.

    http://jet.blog.pl

    1. hhhh a , Emios 22/01/07 20:41
      nawalic petli warunkowych jesli tak niech dodaje do tablicy jesli nie to nastepny znak.......

    
All rights reserved ® Copyright and Design 2001-2024, TwojePC.PL