NOI-1.3-11-计算浮点数相除的余数

11:计算浮点数相除的余数

总时间限制: 
1000ms

内存限制: 
65536kB
描述

计算两个双精度浮点数a和b的相除的余数,a和b都是正数的。这里余数(r)的定义是:a = k * b + r,其中 k是整数, 0 <= r < b。

输入
输入仅一行,包括两个双精度浮点数a和b。
输出
输出也仅一行,a÷b的余数
样例输入
73.263 0.9973
样例输出
0.4601
提示
注意:输出时小数尾部没有多余的0,可以用下面这种格式:
double x;
x = 1.33;
printf("%g", x);
下面是正确的方法,从网上找到的,真的写的又简单又好

#include <iostream>
#include <algorithm>
#include <stdio.h>
#include <string>
#include <ctype.h>

using namespace std;

int main()  {
    double r1, r2, R;
    scanf("%lf%lf", &r1, &r2);
    int k = r1/r2;
    R = r1 - k*r2;

    printf("%g\n", R);

    return 0;
}

下面是我写的错误的,但是不知道哪里错了

#include <iostream>
#include <algorithm>
#include <stdio.h>
#include <string>
#include <ctype.h>

using namespace std;

int main()  {
    double r1, r2, R;
    scanf("%lf%lf", &r1, &r2);
//  R = r1%r2;

    while (r1 >= 0.0 && r1 > r2){
        r1 = r1 - r2;
    }

    printf("%g", r1);

    return 0;
}

时间: 2024-12-17 08:56:53

NOI-1.3-11-计算浮点数相除的余数的相关文章

1029计算浮点数相除的余

1 #include<cstdio> 2 using namespace std; 3 int main() 4 { 5 double a,b,r; 6 int k; 7 scanf("%lf%lf",&a,&b); 8 k=a/b; 9 r=a-k*b; 10 printf("%g",r); 11 12 return 0; 13 } %g用于打印浮点型数据时,会去掉多余的零,至多保留六位有效数字(不同于%e的默认保留小数点后6位) 当%

分支-11. 计算工资(15)

1 /* 2 *c语言实现 3 *B11-分支-11. 计算工资(15) 4 *Created on: 2014年6月3日 5 *Author: Boomkeeper 6 *未全部通过 7 * 8 */ 9 10 #include <stdio.h> 11 #include <stdlib.h> 12 13 float salary=0; 14 15 void newStaff(int *worktime) 16 { 17 if(*worktime<=40) 18 { 19

*分支-11. 计算工资

1 /* 2 *Main.c 3 *B11-分支-11. 计算工资(15) 4 *Created on: 2014年6月3日 5 *Author: Boomkeeper 6 * 7 ******测试未通过********* 8 */ 9 10 #include <stdio.h> 11 #include <stdlib.h> 12 13 float salary=0; 14 15 void newStaff(int *worktime) 16 { 17 //printf("

JS浮点数相减出现异常数

今天小编出现一种情况在js中用0.3-0.2得出来的却不是0.1而是0.09999999999999999999998,很是纳闷,查看了很多资料才发现原来是如下原因导致的: "浮点数"不是"实数",浮点数有最大表示范围,在表示范围内用最接近实数的浮点数可以表示数来表示,比如 0.1是实数,意味着0.10000000-- 都是0.1,而double无法精确表示0.1,但它能精确表示 +0.1000000000000000055511151231257827021181

【noi 2.6_2988】计算字符串距离(DP)

题意: 给两个字符串,可以增.删.改,问使这两个串变为相同的最小操作数. 解法:(下面2种的代码主要区别在初始化和,而状态转移方程大家可挑自己更容易理解的方法打) 1.f[i][j]表示a串前i个和b串前j个完成匹配的最小操作数. 2.f[i][j]表示a串前i-1个和b串前j-1个完成匹配的最小操作数. 1 #include<cstdio> 2 #include<cstdlib> 3 #include<cstring> 4 #include<iostream&g

java.math包下计算浮点数和整数的类

(1)BigIntege:实现任意精度的整数运算.(2)BigDecimal:实现任意精度的浮点运算. 例如: 使用BigDecimal进行浮点数比较 import java.math.BigDecimal; public class HelloWorld{ public static void main(String[] args){ BigDecimal a=BigDecimal.valueOf(1.0); a=a.subtract(BigDecimal.valueOf(0.1)); //s

javascript浮点数相减、相乘出现一长串小数

149.7 * 100 = 14969.999999999998 3.57 - 2.33 = 1.2399999999999998 原文地址:https://www.cnblogs.com/wujinhong/p/12667836.html

整理小朋友在noi.openjudge上的作业(1)

NOI(题库正在建设中,做题纪录有可能会被删除,请注意) 第一章的统计放前面 1 编程基础之输入输出 10 0 0% 最基础有空补刷 2 编程基础之变量定义.赋值及转换 10 0 0% 最基础有空补刷 3 编程基础之算术表达式与顺序执行 20 0 0% 最基础有空补刷 4 编程基础之逻辑表达式与条件分支 21 0 0% 最基础有空补刷 5 编程基础之循环控制 45 10 22% 最基础有空补刷 6 编程基础之一维数组 15 5 33% 最基础有空补刷 7 编程基础之字符串 35 0 0% 有必要

《zw版&#183;Halcon-delphi系列原创教程》 Halcon分类函数014,tuple,元组

<zw版·Halcon-delphi系列原创教程> Halcon分类函数014,tuple,元组 为方便阅读,在不影响说明的前提下,笔者对函数进行了简化: :: 用符号“**”,替换:“procedure” :: 用大写字母“X”,替换:“IHUntypedObjectX” :: 省略了字符:“const”.“OleVariant” [示例] 说明 函数: procedure AddNoiseWhiteContourXld( const Contours: IHUntypedObjectX;