Tôi mới bắt đầu học Java và tôi muốn vượt qua những trở ngại phát sinh khi cố gắng tạo một chương trình Java cho "vấn đề" này. Đây là vấn đề tôi phải tạo một chương trình để giải quyết:
Tandy thích phát kẹo nhưng chỉ có n cái kẹo. Người được cô cho viên kẹo thứ i thì cô đưa cho người đó viên kẹo thứ i. Ví dụ: đầu tiên cô ấy đưa 1 viên kẹo cho Randy, sau đó là 2 viên kẹo cho Pandy và sau đó là 3 viên kẹo cho Sandy. Cho n, cô ấy có thể tặng kẹo cho bao nhiêu người?
Định dạng đầu vào
Dòng đầu tiên là số nguyên x, biểu thị số lượng test. x dòng tiếp theo chứa số nguyên dương n.
Ví dụ đầu vào
2
1
5
định dạng đầu ra
x dòng, mỗi dòng chứa một số nguyên, cho biết số người mà Tandy có thể tặng kẹo cho.
Đầu ra ví dụ
1
2
Để giải quyết vấn đề này tôi đã tạo một chương trình hoạt động tốt nhưng không phù hợp với yêu cầu của vấn đề. Mã số:
nhập java.util.Scanner;
lớp công khai PRB1CandyGame {
public static void main(String[] args)
{
Trường hợp máy quét = Máy quét mới (System.in);
int lặp lại = case.nextInt();
trong khi (lặp lại > 0)
{
int x = case.nextInt();
int tôi = 1;
for(i = 1; xi>=0; i++)
{
x = xi;
}
System.out.println(i-1);
lặp lại--;
}
}
}
(Xin lỗi nếu mã khó hiểu!)
Mã của tôi chấp nhận số lượng "hộp" và sau đó tôi có thể nhập số lượng kẹo để có được số người mà nó có thể phục vụ. Tuy nhiên, chương trình của tôi lấy số lượng kẹo và sau đó xuất ra ngay số lượng người, trong khi tôi muốn nó nhận đượctất cảĐầu vào (số lượng đầu vào dựa trên số ô người dùng nhập vào), sau đó xuất ratất cảgiá trị, không phải giá trị tôi có. Sẽ rất hữu ích nếu bạn có thể giải thích cho tôi cách thực hiện việc này.
Cảm ơn!
Theo hiểu biết của tôi, trước tiên bạn muốn lưu trữ đầu vào ở đâu đó trước khi bắt đầu xử lý các câu trả lời, sau đó xuất tất cả các câu trả lời cùng một lúc.
Thành thật mà nói, tôi nghĩ câu hỏi muốn bạn xử lý từng trường hợp thử nghiệm làm đầu vào và sau đó đưa ra kết quả. Vì vậy, bạn hiện đang đi đúng hướng.
Nhưng nếu bạn muốn lấy tất cả đầu vào rồi xử lý từng đầu vào rồi xuất ra, hãy sử dụng một mảng vì bạn biết kích thước của trường hợp kiểm thử. Bạn cũng cần tạo một mảng đầu ra có cùng kích thước, sau đó xử lý từng mục thứ i trong mảng đầu vào và lưu trữ từng kết quả ở cùng vị trí thứ i trong mảng đầu ra.
hy vọng điều này sẽ giúp
Về JAVA - các chức năng của chương trình là đầu vào và đầu ra, đầu vào và đầu ra; nếu bạn muốn chương trình hoạt động như đầu vào và đầu ra và đầu ra tương ứng, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/46334429/
Tôi là một lập trình viên xuất sắc, rất giỏi!