30/09/2018, 16:17
Cách dừng chương trình khi thỏa mãn một điều kiện?
Có cách nào để sau khi xét, thỏa mãn 1 điều kiện if để thực hiện lệnh rồi thì chương trình ngưng lại không, vì khi nó xét if đầu, thực hiện xong nó xét tiếp điều kiện tiếp, kết quả là nó sẽ in ra nhiều lần
Somebody help @ltd @Honey_moon @laptrinhio
Bài liên quan
thì đơn giản chỉ là
exit()
Dạ thanks anh, thế mà lên Stackoverflow cũng chẳng tìm được
Mà anh, khi để vào nó báo 2 lỗi:
Vậy em phải điền cái j vào giữa 2 dấu ngoặc exit ạ
Em xem lại câu lệnh if else của mình, có thể em lỡ tay xóa mất một chữ
exit(0)
hoặcexit(1)
Số 0 và số 1 không quan trọng trong Windows. Trên Linux người ta có thể lấy giá trị này ra để kiểm tra xem chương trình có lỗi không. Theo quy ước giữa lập trình viên với nhau.
exit(0)
có nghĩa là không lỗiexit( khác 0 )
có nghĩa là có lỗi, và lỗi có số hiệu bằng chính số trả vềhic, code đây anh, lỗi đó em thấy thường chỉ báo khi đằng sau sai cái gì đó. Mới đầu báo lỗi kia, sau khi em thêm 0 vào exit ở các dòng thì cả đám đó đều báo lỗi ‘else’ without ‘if’ cả. Đã thử xóa else, nhưng vẫn vậy.
Em gửi code lên anh xem thử.
Em thiếu ngoặc kìa @nhatlonggunz
Sửa lại thành
Góp ý thêm là hàm
exit
sẽ thoát chương trình luôn, thế nên không cần phảielse
làm gì@ltd Em mới vừa định hỏi
Mà lúc đầu dùng else vẫn không dừng sau khi thực hiện xong if thỏa à, @nhatlonggunz?
Tình hình không khả thi anh ơi
Ý anh là sao?
Khi xét xong if đầu, nó vẫn xét tiếp các if sau và else, hic.
Không khả thi tức là nó không thoát chương trình như em muốn? Em thử debug bằng cách đặt breakpoint hoặc có thể ghi thêm 1 dòng printf và để xem từ console xem code có dạy qua if hay không?
Ví dụ:
ấy chết, em quên đặt exit ở
SpecialCases
, thì ra nó vẫn xét cáiSpecialCases
rồi mới vàoif statement
, vậy em đặtexit(0);
dưới cáiSpeacialCases
hay phải đưa vàoif statement
Vì cơ bản đối với chương trình của bạn thì dùng cách else hay exit() cũng gần như nhau. (Dĩ nhiên trường hợp bài khác thì nó khác ). Có thể là do các hàm khác đã ảnh hưởng bạn thử làm theo anh Đạt xem nó có chui vô if không?
Có thể post hàm SpecialCases() của bạn lên được không?
Cám ơn tất cả mọi người rất nhiều, đã đặt exit dưới
SpecialCases(SC)
và đã thành côngHồi nãy vì dưới
SC
không cóexit
nên nó sẽ xétSC
trước rồi mới vàoif statement
. Mà em nhậpa = 1, b = 2, c= 1
thì nó đều thỏaSC
với1 trong 3 cái if statement
nên nó lặp lại.Bạn có thể up lại code hàm đó không? Mình cảm thấy hơi bất an hí hí
Dạ đây ạ
Vậy các dòng if bên dưới là vô ích rồi, vì cỡ nào nó cũng thực hiện thằng exit(0); trước
Đã test,
SC
của mình có điều kiện nha, code dài nên không tiện post, nhưng nếu anh muốn xem (khoe hàng) thì em sẽ postKhông cần post Bạn chạy thử với bộ test không thỏa SpecialCases() nhưng thỏa một if bên dưới thử nếu ok thì tuyệt rồi