Cứu em với chiều nay thi rùi ! Pascal ??

longvi456

New member
Xu
0
Viết chương trình nhu sau, khi chay phải ra được:
vd: nhap n = 3
- số thứ 1: 2
-sô thứ 2: 5
-số thứ 3: 3
-Vậy tổng la: 3+5+2 =10
"làm cách nao in ra dước 3+5+2 =10 với mọi so được nhập từ bàn phím đây ???"
 
Hên xui vậy... :|

Theo Bút Thép thì viết như sau:

Mã:
Var n,i,j,e,S: integer;
Begin
   S:=0
   write('Nhap gia tri n');
   Read(n);
   For i:=1 to n do 
       Begin 
           write('nhap gia tri thu',i);
           read(j);
           S:=S+j;
       End;
   write('Vay tong la:')
   For i:=1 to n do
       write(j,'+');
   write('=',S);
   readln
End.

Thấy không ổn lắm, nếu có thể thì bạn chờ tí chỉnh sửa xem, còn không thì hi vọng bạn sẽ nghĩ ra ý tưởng gì.
Bài này công nhận :beat_brick:
 
Theo Bút Thép thì viết như sau:

Mã:
Var n,i,j,e,S: integer;
Begin
   S:=0
   write('Nhap gia tri n');
   Read(n);
   For i:=1 to n do 
       Begin 
           write('nhap gia tri thu',i);
           read(j);
           S:=S+j;
       End;
   write('Vay tong la:')
   For i:=1 to n do
       write(j,'+');
   write('=',S);
   readln
End.

Thấy không ổn lắm, nếu có thể thì bạn chờ tí chỉnh sửa xem, còn không thì hi vọng bạn sẽ nghĩ ra ý tưởng gì.
Bài này công nhận :beat_brick:

Đoạn code này có vấn đề. vì bạn không lưu lại các giá trị của j. Làm sao có thể in ra hết được. Để in ra vậy bạn dùng mảng 1 chiều đi. Nhập các số vào mảng/
 
program tong;
ues crt;
var a, b, c, s:real;
begin
clrscr;
write (' nhap gia tri a');
write ('nhap gia tri b');
write ('nhap gia tri c');
readln (a,b,c);
S:=a+b+c;
writeln ('vay tong la a+b+c=');
readln
end.
 
Vì em chưa học mảng 1 chiều vì vậy không thể lưu số đó lại để sau này có thể xuất ra được nên đành phải xuất liền thôi. Nếu không làm cách đó thì làm sao em có thể xuất lại số đó. Mình đâu biết trước được n. :D
 
Rảnh rỗi ngồi nhớ tới bài này. Quê quá. :">:">:">

Mình nghĩ ra cách xuất, dùng đệ quy có thể xuất được kết quả như vậy. Nhưng mình không nghĩ tin 11 chưa học mảng 1 chiều lại có thể học đệ quy. :D Quên cú pháp pascal nên không có source. Nhưng ý tưởng thuật toán:


Nhập n. dem = 0, s = 0;
Xây dựng thủ tục Run(dem, s)
B1: Nếu dem = n -> Xuất " = " s.
B2: Nhập 1 số a. dem := dem + 1, s := s + a;
Gọi Run(dem, s);
B3: Xuất a + ;

hix không biết viết thuật toán của đệ quy sao cả. Nhưng nói chung ý tưởng là vậy. :D
 

VnKienthuc lúc này

Không có thành viên trực tuyến.

Định hướng

Diễn đàn VnKienthuc.com là nơi thảo luận và chia sẻ về mọi kiến thức hữu ích trong học tập và cuộc sống, khởi nghiệp, kinh doanh,...
Top