modyfikacja programu w C

aleksandra1994

Nowicjusz
Dołączył
2 Listopad 2012
Posty
1
Punkty reakcji
0
Napisałam program:

#include
#include

int main (void)
{
int xa,xb,ya,yb;
printf ("Program liczacy odleglosc pomiedzy dwoma punktami w przestrzeni.\n");
printf ("Podaj wspolrzedne punktu A. \n");
printf ("Podaj xa: ", xa);
scanf ("%d", &xa);
printf ("Podaj ya: ", ya);
scanf ("%d", &ya);
printf ("Podaj wspolrzedne punktu B. \n");
printf ("Podaj xb: ", xb);
scanf ("%d", &xb);
printf ("Podaj yb: ", yb);
scanf ("%d", &yb);
printf ("Odleglosc miedzy tymi punktami wynosi: %lf", sqrt((xb-xa)*(xb-xa)+(yb-ya)*(yb-ya)));

getchar ();
return 0;

}

Teraz mam go zmodyfikować tak, aby możliwe było wielokrotne przeprowadzanie obliczeń dla różnych
danych wejściowych.
Należy dodać pętlę główna programu. Kolejne nawroty pętli
uzależnić od odpowiedzi na pytanie: "czy kontynuować obliczenia? (t\n)",
zadawane użytkownikowi po wyświetleniu wyników.

Nie mam pojęcia jak się za to zabrać. Będę wdzięczna za jakąkolwiek pomoc.
 

Xetren

Nowicjusz
Dołączył
26 Październik 2009
Posty
5
Punkty reakcji
0
Z nudów podjąłem się przerobienia Twojego programu. Przy okazji przypomniałem sobie składnię C.
Oto kod:
Kod:
#include<stdio.h>
#include<math.h>
int czy_kontynuowac()
{
	 char kontynuacja;
	 for(;;)
	 {
	    printf ("\nCzy kontynuowac obliczenia? (t/n):\t");
	    scanf("%s", &kontynuacja);   //pobieranie znaku
	    switch(kontynuacja)
	    {
		    case 'n':
		    case 'N':
			    printf ("\nDziekuje za wspolprace!\n");
			    return 0;
			    break;
		    case 't':
		    case 'T':
			    printf ("\nWybrales kontynuacje! Wiec do dziela!\n");
			    return 1;
			    break;
		    default:
			    printf ("\nOdpowiedziales: %c \tNie rozpoznaje odpowiedzi. Sprobuj jeszcze raz!\n", kontynuacja);
			    break;
	    }
	 }
}
///////////////////////////////////////////////////////////////////////////
int main (void)
{
int xa,xb,ya,yb;

printf ("Program liczacy odleglosc pomiedzy dwoma punktami w przestrzeni.\n");

do
{
    printf ("\nPodaj wspolrzedne punktu A. \n");
    printf ("Podaj xa: ", xa);
    scanf ("%d", &xa);
    printf ("Podaj ya: ", ya);
    scanf ("%d", &ya);
    printf ("Podaj wspolrzedne punktu B. \n");
    printf ("Podaj xb: ", xb);
    scanf ("%d", &xb);
    printf ("Podaj yb: ", yb);
    scanf ("%d", &yb);
    printf ("Odleglosc miedzy tymi punktami wynosi: %lf\n", sqrt((xb-xa)*(xb-xa)+(yb-ya)*(yb-ya)));
} while(czy_kontynuowac()); // Jesli n lub N - wyjdz
getchar ();
return 0;
}
Jeśli czegoś nie rozumiesz lub też masz jakieś wątpliwości, napisz tutaj - postaramy się to rozwiązać.
Pozdrawiam!
 
Do góry