• 理财收益的计算 计算浮点数的n次方 1466


    题目描述

    老傻非常喜欢购买理财产品,而且这款理财产品被推销人员吹得特别高,对于贪财的老傻来说正中下怀,于是在心里盘算着买了它,自己就是亿万富豪,现需要你编写一个程序,帮老傻计算其收益,老傻的投入是R(0<R<99.999),经过n个月后其精确收益为R^n(R的n次方,n<=30)。

    输入描述

    第一行是测试数据组数T,每组数据占一行,对应于R和n

    输出描述

    对于每组测试数据,输出一行R^n的精确值。首尾无意义的0不要输出,如果是整数,则不要输出小数点。

    样例输入

    2

    95.123 12

    0.001 10

    样例输出

    548815620517731830194541.899025343415715973535967221869852721

    .000000000000000000000000000001

    这道题难度比较大

     1 #include<iostream>
     2 #include<string>
     3 using namespace std;
     4 int main(){
     5     int h,g;
     6     cin>>h;
     7     for(g=0;g<h;g++){
     8         string m;
     9         int n,len,i,j,p=0,nm=0,num,wd=1,c,s;
    10         int ms[126]={0};
    11         ms[0]=1;
    12         cin>>m>>n;
    13         len=m.length();
    14         for(i=0;i<len;i++){
    15             if(m[i]=='.'){
    16                 p=len-1-i;
    17                 p=p*n; 
    18             }
    19             else{
    20                 num=m[i]-'0';
    21                 nm=nm*10+num;
    22             }
    23         }
    24         for(i=0;i<n;i++){
    25             c=0;
    26             for(j=0;j<wd;j++){
    27                 s=ms[j]*nm+c;
    28                 ms[j]=s%10;
    29                 c=s/10;
    30             }
    31             while(c!=0){
    32                 ms[j++]=c%10;
    33                 c=c/10;
    34             }
    35             wd=j;
    36         }
    37         if(wd<=p){
    38             cout<<'.';
    39             for(i=0;i<p-wd;i++){
    40                 cout<<'0';
    41             }
    42             for(i=wd-1;i>=0;i--){
    43                 cout<<ms[i];
    44             }
    45         }
    46         else{
    47             i=0;
    48             while(ms[i]==0&&i<p){
    49                 i++;
    50             }
    51             for(j=wd-1;j>=i;j--){
    52                 if(j+1==p){
    53                     cout<<'.';
    54                 }
    55                 cout<<ms[j];
    56             }
    57         }
    58         cout<<endl;
    59     }
    60     return 0;
    61 }
    转载请标明出处
  • 相关阅读:
    [办公自动化]企业网IE多版本引发的网页无法访问
    [每天想一想]如果你的领导不懂技术,你该怎么办?
    [思考]我们应该怎样建设企业IT
    [读书笔记]流畅的Python(Fluent Python)
    [办公自动化]网件交换机管理软件
    PCRE函数简介和使用示例
    pcre7.0在vc6.0编译
    Luogu P2173 [ZJOI2012]网络
    tensorflow学习笔记2
    python数据可视化7
  • 原文地址:https://www.cnblogs.com/zq-dmhy/p/11084751.html
Copyright © 2020-2023  润新知