Go Back   VN-Zoom Forum > Chia sẻ kiến thức > Lập trình > Pascal | C/C++

 



Trả lời Gửi Ðề Tài Mới
 
Ðiều Chỉnh Xếp Bài
Old 08-06-2008, 20:47   #1
Búa Gỗ
 
thuongth467's Avatar
 
Tham gia: Dec 2007
Đến từ: The Sky
Bài: 22
VZD: 990
Điểm: 11/4 bài viết
Send a message via Yahoo to thuongth467 Send a message via Skype™ to thuongth467
Red face Giup minh xu ly bai C nay!

các bạn giúp mình làm bài C này nhé. Thanks!

Khi nhập 1 số bất kỳ.
- nếu số đó <0 hoặc nhập sai số (nghĩa là bạn nhập các ký tự chữ cái hoặc nhập thừa dấu chấm phẩy) thì thông báo lỗi và yêu cầu nhập lại.
__________________
thuongth467 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 09-06-2008, 10:39   #2
Rìu Sắt Đôi
 
thienthan's Avatar
 
Tham gia: Nov 2007
Bài: 292
VZD: 4.697
Điểm: 85/70 bài viết
Send a message via Yahoo to thienthan
Default

Giải pháp đọc giá trị nhập vào như là một chuỗi.
Viết một cái hàm kiểm tra cái chuôi đó có hợp lệ không.
Chuyển chuỗi đó về dạng mong muốn. Viết một cái hàm convert không khó lắm bạn tự viết lấy.
PHP Code:
do
{
<
các lệnh nhập>
} while (<
hàm kiểm tra chuỗi>)
<
convert
thienthan vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 09-06-2008, 21:21   #3
Búa Gỗ
 
thuongth467's Avatar
 
Tham gia: Dec 2007
Đến từ: The Sky
Bài: 22
VZD: 990
Điểm: 11/4 bài viết
Send a message via Yahoo to thuongth467 Send a message via Skype™ to thuongth467
Default

cảm ơn bạn. bạn có thể nói rõ hơn ko?
mình chưa biết dùng hàm convert. Vì trường mình ko dạy SV về môn này nhiều lắm, mà SV phải tự tìm hiểu mà làm. Nhưng đề thi lại rất khó, thế mới khổ chứ.
__________________
thuongth467 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 10-06-2008, 10:17   #4
dst
Rìu Sắt Đôi
 
dst's Avatar
 
Tham gia: Mar 2008
Đến từ: Hà Nội
Bài: 271
VZD: 6.210
Điểm: 310/78 bài viết
Default

Bạn thử làm như sau xem:
#include <stdio.h>
#include <conio.h>
#include <string.h>
void main()
{
char dongy;
char buff[256];
do{
printf("\nNhap so: ");
gets(st);
int test;
for(int i=0;i<strlen(buff);i++)
{
if(c>='0'&&c<='9')
test=0;
else
{
test=1;
break;
}
}
if(test!=0)
printf("\nNhap sai! Hay nhap lai!");
printf("\nTiep tuc?(y/n)");
scanf("%c",dongy);
}while(dongy=='y'||dongy=='Y');
}
Cảm ơn nếu thấy bài hay!
dst vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Thành viên đã cám ơn bài viết này của dst:
thuongth467 (10-06-2008)
Old 10-06-2008, 19:31   #5
Búa Gỗ
 
thuongth467's Avatar
 
Tham gia: Dec 2007
Đến từ: The Sky
Bài: 22
VZD: 990
Điểm: 11/4 bài viết
Send a message via Yahoo to thuongth467 Send a message via Skype™ to thuongth467
Default

cam on ban nhieu
__________________
thuongth467 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 10-06-2008, 19:36   #6
Búa Gỗ
 
thuongth467's Avatar
 
Tham gia: Dec 2007
Đến từ: The Sky
Bài: 22
VZD: 990
Điểm: 11/4 bài viết
Send a message via Yahoo to thuongth467 Send a message via Skype™ to thuongth467
Default

bạn cho mình hỏi chút.
ngoài dùng chuỗi ra, còn co cách nào khác ko. Vì mình chưa đc học chuỗi. Và vì cô giáo yêu cầu kô đc dùng chuỗi, mà chỉ đc dùng hàm để làm. Mấy đứa bạn mình cũng làm dc mà ko cần dùng chuỗi.
__________________
thuongth467 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-06-2008, 11:23   #7
dst
Rìu Sắt Đôi
 
dst's Avatar
 
Tham gia: Mar 2008
Đến từ: Hà Nội
Bài: 271
VZD: 6.210
Điểm: 310/78 bài viết
Default

Theo tớ nghĩ thì bạn có thể viết như sau:
#include <stdio.h>
#include <conio.h>
#include <string.h>
void main()
{
double so;
char dongy='y';
do{
printf("\nHay nhap so: ");
try
{
scanf("%lf",so);
if(so<0)
printf("\nNhap sai!");
}
catch
{
printf("\nNhap sai!");
}
printf("\nTiep tuc?(y/n)");
scanf("%c",dongy);
}while(dongy=='y'||dongy=='Y');
}
dst vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-06-2008, 11:32   #8
Gà Con
 
vuongtoan123's Avatar
 
Tham gia: Jun 2008
Bài: 0
VZD: 645
Điểm: 10/1 bài viết
Default

cac ban co bik hack 20EXP au hok ai bik chi minh voi pót len cho minh nha
vuongtoan123 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-06-2008, 14:45   #9
Rìu Sắt Đôi
 
thienthan's Avatar
 
Tham gia: Nov 2007
Bài: 292
VZD: 4.697
Điểm: 85/70 bài viết
Send a message via Yahoo to thienthan
Default

Trích:
thuongth467 View Post
các bạn giúp mình làm bài C này nhé. Thanks!

Khi nhập 1 số bất kỳ.
- nếu số đó <0 hoặc nhập sai số (nghĩa là bạn nhập các ký tự chữ cái hoặc nhập thừa dấu chấm phẩy) thì thông báo lỗi và yêu cầu nhập lại.
Cách khác à.
Như theo yêu cầu của cậu thì chỉ dùng chuỗi hoặc try ... catch ... được thôi.
Nhưng nếu bớt đi một tí là nhập số thỏa mãn điều kiện cho trước thì bạn có thể sử dụng kiểu dữ liệu số rộng hơn như bạn trên đã ví dụ đó.
Chưa học chuỗi càng chưa học try... catch ...
thienthan vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 13-07-2008, 21:14   #10
Gà Con
 
chieuhungtt's Avatar
 
Tham gia: Jul 2008
Bài: 1
VZD: 147
Điểm: 0/0 bài viết
Default

hay wai troi luon nhung con nhieu cau lenh cha hieu
chieuhungtt vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 13-07-2008, 21:24   #11
Rìu Bạc
 
thanhvinh007's Avatar
 
Tham gia: Aug 2007
Bài: 314
VZD: 5.729
Điểm: 90/70 bài viết
Default

Uhm cái này bạn có thể sử dụng mã ASSCI mà làm cũng dc. cứ dùng hàm if roài gán mã vào cho hàm. Quy định if ... else cho nó khi nào nằm ngoài vùng thoai. Dễ mà.
thanhvinh007 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời Gửi Ðề Tài Mới

Ðiều Chỉnh
Xếp Bài

Quyền Sử Dụng Ở Diễn Ðàn
Bạn không thể gửi chủ đề mới
Bạn không thể gửi trả lời
Bạn không thể gửi file đính kèm
Bạn không thể tự sửa bài viết của bạn

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt
Trackbacks are Tắt
Pingbacks are Tắt
Refbacks are Tắt
Chuyển đến


Múi giờ GMT +7. Hiện tại là 15:36.


Powered by vBulletin® Version 3.7.3
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
vBCredits v1.4 Copyright ©2007 - 2008, PixelFX Studios
Từ điển được cung cấp bởi VDict.com - Hosting được tài trợ bởi Rao vặt 123