Podstawy Turbo Pascala

arothq
Użytkownik
Użytkownik
Posty: 4
Rejestracja: 14 mar 2011, o 22:11
Płeć: Mężczyzna
Lokalizacja: Krakó

Podstawy Turbo Pascala

Post autor: arothq »

Witam, w tym roku zaczeliśmy podstawy TP, i większość z nas nie ogarnia sporej części. Dostaliśmy 11 zadań na banalnym poziomie (dla osoby która coś w TP robiła). Mógłby ktoś zrobić choć część tych zadań? Zapewne na podstawie rozwiązań uda nam się to bardziej zrozumieć.

1


Napisz program, który wypisuje wszystkie liczby dwucyfrowe których iloczyn cyfr jest nieparzysty

2


Napisz program, który z n liczb znajduje element najmniejszy

3


Napisz program wczytujący liczbę dodatnią i wymagający od użytkownika podania jej pierwiastka kwadratowego ( z dowolnie z góry podana dokładnością, metoda kolejnych przybliżeń. Program powinien odpowiadać komunikatami : „za dużo”, „ za mało”)

4


Napisz program rozwiązujący równanie kwadratowe ax2 +bx+ c

Program powinien zapytać o współczynniki.

5


Napisz program, który oblicza n! (metoda iteracyjną) dla podanej przy jego wywołaniu wartości

6


Napisz program obliczający pole koła na postawie promienia. Należy przygotować dwie wersje programu. W pierwszej promień jest zapisany w programie jako stała. Druga wersja programu pobiera promień od użytkownika „z klawiatury”.



7


Napisz program wczytujący długości boków trójkąta i obliczający długość promienia okręgu wpisanego w ten trójkąt. Program po wprowadzeniu boków musi sprawdzić czy da się na nich zbudować trójkąt.

8


Napisz program ,który obliczy NWD metodą Euklidesa (największy wspólny dzielnik) dla dwóch dowolnych liczb.

9


Napisz program wypisujący wszystkie liczby trzycyfrowe, których suma cyfra jest parzysta.

10


Napis program, który pozwoli wprowadzić trzy liczby naturalne i uszereguje je od najmniejszej do największej

11


Napisz program-grę, który będzie zgadywał wylosowana przez komputer liczbę. Użytkownik otrzymuje komunikaty: „za dużo”, „ za mało”, „właściwa”. Po odgadnięciu zwraca liczbę podanych propozycji.


Z góry wielkie dzięki za pomoc, i proszę o zrozumienie ;D
Afish
Moderator
Moderator
Posty: 2828
Rejestracja: 15 cze 2008, o 15:45
Płeć: Mężczyzna
Lokalizacja: Seattle, WA
Podziękował: 3 razy
Pomógł: 356 razy

Podstawy Turbo Pascala

Post autor: Afish »

Jelenia nie znajdziesz. Pokaż, co już napisałeś.
Xitami

Podstawy Turbo Pascala

Post autor: Xitami »

1.

Kod: Zaznacz cały

function fun(n:integer):integer;
begin
  fun:=10*(2*(n div 5)+1) + (n mod 5)*2 + 1;
end;

var 
    i:integer;
begin
    for i:=0 to 24 do 
        write(fun(i),',')
end.
-- 15 marca 2011, 17:38 --

5.

Kod: Zaznacz cały

function silnia(n:cardinal):cardinal;
var a,b,k,s:cardinal; z:integer;
begin
	s:=n; z:=n-1; 
	if n>0 then k:=n else k:=1;
	while z>1 do begin
		a:=s; k:=0; b:=z;
		while b>0 do begin
			if odd(b) then 
				k:=k+a;
			a:=a+a;
			b:=b shr 1;
		end;
		s:=k; 
		dec(z);
	end;
	silnia:=k;
end;

var i:integer;
begin
	for i:=0 to 12 do
		writeln(i:3, '! =',silnia(i):10);
end.
-- 16 marca 2011, 09:35 --

6

Kod: Zaznacz cały

const promien=3.0;

var i,n,t,a,b:cardinal; r:real;
begin 
	t:=0; n:=0; randomize;
	a:=random(32768); a:=a*a;
	for i:=1 to 100000000 do begin
		b:=random(32768); b:=b*b;
		if a+b<=1073676289 then inc(t)
		else inc(n);
		a:=b;
	end;
	r:=promien;
	write('Podaj promien :'); readln(r);  {dla wer. 1 usuń ten wiersz}
	writeln;
	writeln('pole kola o promieniu ', r,' to ', r*4.0*t/(t+n):0:3); 
	writeln(t,' ',n,' ',4*t/(t+n))
end.
ODPOWIEDZ