Anda di halaman 1dari 5

Jawaban mid No 1.

No2.

No 3. Bandingkan dengan soal unk melihat kesalahan program. Disini saya beri tanda merah: uses wincrt; var a,b,c:integer;
begin a:=5,b:=10; while b>=0 do begin c=a+b; writeln(b-a:5;c;5); b=b-2; end; end.

Berikut pembenahannya: uses wincrt; var a,b,c:integer; begin a:=5;b:=10; while b>=0 do begin c:=a+b; writeln(b-a:5,c:5); b:=b-2; end; end. Outputnya:

No 4.

Buatlah program yang dapat mencetak jumlah genap (Sumeven) dari suatu bilangan yang diinputkan (n). Jika yang diinputkan bukan bilangan genap, maka kurangilah dengan satu baru dilakukan operasi dec(n). Ilustrasi: Misal diinputkan 11, maka harus dikurangi 1, shg akan menjadi 10. Sehingga hasilnya keluarannya adalah 10 + 8 +6+4+ 2+ 0 maka Sumeven=30. Jadi anda harus mencetak alur penjumlahannya. Gunakan loop dan kondisi untuk menyelesaikan persoalan di atas

uses wincrt; var i,n:integer; Sumeven:longint;

ya:char;

begin repeat begin sumeven:=0; writeln('mencari jumlah genap suatu bilangan'); write('masukkan bilangan bulat ');readln(n); if (n>0) and (n mod 2<>0) then dec(n) else if (n<0) and (n mod -2<>0) then inc(n); {kalau n positif} if n>=0 then begin for i:=n downto 0 do if (i mod 2=0) then begin Sumeven:=Sumeven+i; write(i:3,'+'); end; writeln; writeln('Jumlah dari deret di atas adalah ',sumeven); end else begin for i:=n to 0 do if (i mod -2 = 0) then begin

sumeven:=sumeven+i; write(i:3,' + '); end; writeln; writeln('jumlah deret diatas adalah ',sumeven); end; write('mau coba lagi<y/t>? ');readln(ya); end until (ya='t'); end.

Anda mungkin juga menyukai