博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
17230 计算轴承半径
阅读量:5933 次
发布时间:2019-06-19

本文共 1347 字,大约阅读时间需要 4 分钟。

Description

轴承是一种十分常见的,在机械传动过程中起固定和减小载荷摩擦系数的部件。也可以说,当其它机件在轴上彼此产生相对运动时,用来降低动力传递过程中的摩擦系数和保持轴中心位置固定的机件。轴承是当代机械设备中一种举足轻重的零部件。	详细可以参考这个链接:http://baike.baidu.com/view/5545.htm?noadapt=1	对于大多数的轴承,它们的基本结构都是一个圆柱体。从柱体的一个面看,每个轴承的轮廓都是由两个同心圆构成,在两个同心圆之间有许多的小圆围绕。其中,调心球轴承就是一个经典的模型。	现在要求轴承里至少要能够放置N个排列在大圆边界内的半径为R的小球(忽略小圆),柱体的底面大圆半径至少要多少?为了精确制造,要求给出的半径必须为整数。

输入格式

第一行输入一个正整数T,表示将要输入的测试数据数量。	接下来有T行,每行输入两个正整数N,R,分别表示小球的个数以及小球的半径。	(T<=100,1<=N,R<=1000)

输出格式

对于每一组测试数据,输出一行”Case X: ”,其中X表示第几组数据,然后是一个整数,表示能够放置全部小球的柱体的底面半径至少是多少。

 

输入样例

32 13 25 4

 

输出样例

Case 1: 2Case 2: 5Case 3: 11

 

提示

第一组数据中,要包含2个半径为1的小球,柱体底面半径最少是2。第二组数据中,要包含3个半径为2的小球,柱体底面半径最少是4.30940。第三组数据中,要包含5个半径为4的小球,柱体底面半径最少是10.80520。

 

#include"stdio.h"#include"math.h"#define PI acos(-1.0)int main(){    int  T, R;    int i, temp;    double N,x, y, q, z, r,k[102];    scanf("%d", &T);    for (i =0; i < T; i++)    {        scanf("%lf%d", &N, &R);        if (N == 1)            k[i]=R;        else        {            z = (180 * (N - 2)) / (2 * N);            q = z / 180 * PI;            r = R / cos(q) + R;            k[i]=r;        }    }    for(i=0; i
temp) temp = temp + 1; printf("Case %d: %d\n", i+1,temp); }}/*这个题目我debug了很多次,错的地方有两个,首先π的精度问题,可用acos(-1.0)其次,我这里在求角度q时 N参与了除法 导致出现整除误差的问题 还要注意case-%d:-%d*/
View Code

 

转载于:https://www.cnblogs.com/orchidzjl/p/4263626.html

你可能感兴趣的文章
angularjs指令(二)
查看>>
(原創) 如何建立一个thread? (OS) (Linux) (C/C++) (C)
查看>>
<气场>读书笔记
查看>>
实现一个平行四边形
查看>>
领域驱动设计,构建简单的新闻系统,20分钟够吗?
查看>>
web安全问题分析与防御总结
查看>>
React 组件通信之 React context
查看>>
ZooKeeper 可视化监控 zkui
查看>>
Linux下通过配置Crontab实现进程守护
查看>>
ios 打包上传Appstore 时报的错误 90101 90149
查看>>
Oracle推出轻量级Java微服务框架Helidon
查看>>
密码概述
查看>>
程序员初入公司:10大经验让你能力提升20倍!
查看>>
nagios+nrpe监控配置错误日志集
查看>>
Hyper-V、SCVMM2012和XenDesktop 5.6桌面虚拟化运维之更新、添加和删除虚拟桌面
查看>>
Wireless在域里面实施WPA认证设定应用
查看>>
澳大利亚政府想让ISP拦截恶意软件
查看>>
手机停机号码被回收后容易信息泄露?工信部说这样做
查看>>
《数据分析实战:基于EXCEL和SPSS系列工具的实践》——3.4 数据量太大了怎么办...
查看>>
JavaScript应用开发实践指南迷你书
查看>>