编程初学者想问一下我到底错在哪里了一直答案不对

一只大象口渴了,要喝20升水才能解渴,但现在只有一个深h厘米,底面半径为r厘米的小圆桶(h和r都是整数)。问大象至少要喝多少桶水才会解渴。(设PAI=3.14159)
提示信息:"please input the height and the radius:\n"
输入格式:"%d,%d"
小圆桶的深h,和底面半径r,单位都是厘米。
输出格式:"%d"

我的做法:
#include<stdio.h>
int main()
{
int h, r, n;
double sum;
double PAI = 3.14159;
printf("please input the height and the radius:\n");
scanf("%d,%d", &h, &r);
n = 1;
while(sum >= 20000)
{
sum = PAIrrhn;
n = n + 1;
}
printf("%d", n);
return 0;
}

sum开始都没初始化,还有循环条件应该是sum<20000

#include <iostream>
using namespace std;

#define Pi 3.14159
#define All 20000

int main()
{
    int h = 0, r = 0;
    int num = 0;//所需桶数
    //输入数据
    cin >> h >> r;
    //计算单桶体积
    int volume = Pi * r * r * h;
    //计算所需桶数
    if (All%volume == 0)
    {
        num = All/volume;
    } 
    else
    {
        num = All/volume +1;
    }
    //输出结果
    cout << num << endl;
    return 0;
}