• Chào mừng Bạn tham gia Diễn Đàn Kiến Thức tổng hợp No.1 VNKienThuc.com - Định hướng VN Kiến Thức
    -
    HÃY TẠO CHỦ ĐỀ KIẾN THỨC HỮU ÍCH VÀ CÙNG NHAU THẢO LUẬN

Giúp em 1 bài lập trình PASCAL

Nhok_LTK

New member
Xu
0
thầy em có cho 1 số bài tập về làm , còn có mỗi bài này em bí :( , anh chị nào đã học qua giúp em với nhé

Đề : Nhập vào 1 số nguyên dương , viết chương trình nhập hiển thị số đó theo chiều ngược lại .
VD : 12345 ----> 54321

ps : phần kiến thức này nằm trong phần kiến thức về vòng lặp và em chỉ mới dc học đến biểu thức điều kiện , biểu thức chọn và vòng lặp . Mong các anh chị giúp đỡ :D

Cảm ơn :burn_joss_stick:
 
đầu tiên là đếm số cs(n)
nếu n chẵn
cho i chạy từ 1 đến n/2,gán ai=a(n-i) (thông qua biến trung gian)
nếu i lẻ tương tự cho i chạy từ 1 đến (n-1)/2
khung ch trình là vậy,bạn thử trên máy xem ổn không nhá
 
wan trọng là em ko biết cách đếm số chữ số của n , tại vì nhập vào là số nguyên bất kì , m00n hướng dẫn em chỗ đó nhé :D
 
có thể làm thế này

{khai báo biến và nhập các dữ liệu, chắc bạn biết làm}
if n mod 2=0 then
begin
for i:=1 to n*0.5 do
begin
a:=tg;
tg:=a[i-1];
a[i-1]:=a;
end;
end;
else
begin
for i:=1 to (n-1)*0.5 do
{như trên}




theo mình nghĩ thỳ bài đó đúng... sai thỳ chúc bạn may mắn lần sau =.="
 
dùng phép chia cho 10,đến khi thương =0 ấy
ah , xong rồi , nhờ cái ý tưởng này của m00n , e nảy ra dc 1 hướng khác khá ổn :D

Mã:
program bai64;
uses crt;
var
 n,so:longint;
begin
 clrscr;
 writeln('DAY LA CHUONG TRINH IN RA SO NGUYEN DUONG NGUOC LAI VOI SO DA NHAP VAO');
 write('Nhap vao 1 so nguyen duong : ');
 readln(n);
 write('So dao nguoc la : ');
 repeat
 so:=n mod 10;
 write(so);
 n:=n div 10;
 until(n div 10 = 0);
 so:=n mod 10;
 write(so);
 readln;
end.

Cảm ơn vì sự giúp đỡ chân thành của mọi ng` :D
 
Bạn thử đặt biến a là số đó
var a,p:string;
i,x:byte;
begin
{Bước đầu tiên bạn phải xuất ra màn hình chuỗi bạn nhập là a 12345}
x:=length(a); {length(a) dúng để đếm số kí tự có trong chuỗi a (a của bạn là có 5 số)}
p:=' '; {Bạn tạo một xâu rỗng để sau đó bạn gán chuỗi đảo ngược vào p này}
for i:=x downto 1 do p:=p+a;
write('So dao nguoc la:',p);
readln
end.

{ Cái này hình như trong sách nó có, bạn tham khảo thêm trang 71,72 gì đó trong SGK Tin Học 11 xem để biết chính xác }:encouragement:
 
Sửa lần cuối bởi điều hành viên:

Chủ đề mới

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