PAT基礎編程題目-7-17 爬動的蠕蟲
題目詳情
解答
C語言版
#include<stdio.h>
int main() {
int n, u, d, time = 0, position = 0;
scanf("%d %d %d", &n, &u, &d);
while (1)
{
if (n - position > u) // 剩下的距離需要超過一分鐘的時間爬
{
// time++;
// position += u;
// time++;
// position -= d;
time += 2;
position = position + u - d;
}
else { // 剩下的距離不足一分鐘爬
time++;
break;
}
}
printf("%d", time);
return 0;
}
C++版
#include<iostream>
using namespace std;
int main() {
int n, u, d, time = 0, position = 0;
cin >> n >> u >> d;
while (1)
{
if (n - position > u) // 剩下的距離需要超過一分鐘的時間爬
{
// time++;
// position += u;
// time++;
// position -= d;
time += 2;
position = position + u - d;
}
else { // 剩下的距離不足一分鐘爬
time++;
break;
}
}
cout << time;
return 0;
}
Java版
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
int n = 0, u = 0, d = 0, time = 0, position = 0;
Scanner scanner = new Scanner(System.in);
if (scanner.hasNext()) {
n = scanner.nextInt();
u = scanner.nextInt();
d = scanner.nextInt();
}
scanner.close();
while (true)
{
if (n - position > u) // 剩下的距離需要超過一分鐘的時間爬
{
// time++;
// position += u;
// time++;
// position -= d;
time += 2;
position = position + u - d;
}
else { // 剩下的距離不足一分鐘爬
time++;
break;
}
}
System.out.println(time);
}
}
創作不易,喜歡的話加個關注點個贊,謝謝謝謝謝謝!