Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/162.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 为什么';这个代码不能去掉中间的数字吗? #包括 #包括 使用名称空间std; int main(){ int n,l=0,a,s,d,w; cin>>n; a=n; while(a!=0){ l++; a=a/10; } 如果(l%2==0){ s=n/pow(10,(l/2)+1); w=功率(10,(l/2)-1); d=n%w; }否则{ s=n/pow(10,l/2+1); w=功率(10,l/2); d=n%w; } cout_C++ - Fatal编程技术网

C++ 为什么';这个代码不能去掉中间的数字吗? #包括 #包括 使用名称空间std; int main(){ int n,l=0,a,s,d,w; cin>>n; a=n; while(a!=0){ l++; a=a/10; } 如果(l%2==0){ s=n/pow(10,(l/2)+1); w=功率(10,(l/2)-1); d=n%w; }否则{ s=n/pow(10,l/2+1); w=功率(10,l/2); d=n%w; } cout

C++ 为什么';这个代码不能去掉中间的数字吗? #包括 #包括 使用名称空间std; int main(){ int n,l=0,a,s,d,w; cin>>n; a=n; while(a!=0){ l++; a=a/10; } 如果(l%2==0){ s=n/pow(10,(l/2)+1); w=功率(10,(l/2)-1); d=n%w; }否则{ s=n/pow(10,l/2+1); w=功率(10,l/2); d=n%w; } cout,c++,C++,d不是输出的一部分。因此不会显示它的计算结果 #include<iostream> #include<cmath> using namespace std; int main(){ int n,l=0,a,s,d,w; cin>>n; a=n; while(a!=0){ l++; a=a/10; } if(l%2==0){ s=n/pow(10,(l/2)+1);

d
不是输出的一部分。因此不会显示它的计算结果

#include<iostream>
#include<cmath>
using namespace std;
int main(){
    int n,l=0,a,s,d,w;
    cin>>n;
    a=n;
    while(a!=0){
        l++;
        a=a/10;
    }
    if(l%2==0){
        s=n/pow(10,(l/2)+1);
        w=pow(10,(l/2)-1);
        d=n%w;
        } else{
        s=n/pow(10,l/2+1);
        w=pow(10,l/2);
        d=n%w;
    }
    cout<<s*(pow(10,(l/2)-1));
}
if(l%2==0){
s=n/pow(10,(l/2)+1);
w=功率(10,(l/2)-1);
d=n%w;
}否则{
s=n/pow(10,l/2+1);
w=功率(10,l/2);
d=n%w;
//如果n==12345,我得到
//s=12
//w=100
//d=45
//l=5
}

cout
d
不是输出的一部分。因此不会显示它的计算结果

#include<iostream>
#include<cmath>
using namespace std;
int main(){
    int n,l=0,a,s,d,w;
    cin>>n;
    a=n;
    while(a!=0){
        l++;
        a=a/10;
    }
    if(l%2==0){
        s=n/pow(10,(l/2)+1);
        w=pow(10,(l/2)-1);
        d=n%w;
        } else{
        s=n/pow(10,l/2+1);
        w=pow(10,l/2);
        d=n%w;
    }
    cout<<s*(pow(10,(l/2)-1));
}
if(l%2==0){
s=n/pow(10,(l/2)+1);
w=功率(10,(l/2)-1);
d=n%w;
}否则{
s=n/pow(10,l/2+1);
w=功率(10,l/2);
d=n%w;
//如果n==12345,我得到
//s=12
//w=100
//d=45
//l=5
}

cout您没有在上次计算中添加
d
部分:
l
应以不同方式修改偶数和奇数

尝试:

if(l%2==0){
s=n/pow(10,(l/2)+1);
w=功率(10,(l/2)-1);
d=n%w;
l=l/2-1;
}否则{
s=n/pow(10,(l/2)+1);
w=功率(10,l/2);
d=n%w;
l=l/2;
}

cout您没有在上次计算中添加
d
部分:
l
应以不同方式修改偶数和奇数

尝试:

if(l%2==0){
s=n/pow(10,(l/2)+1);
w=功率(10,(l/2)-1);
d=n%w;
l=l/2-1;
}否则{
s=n/pow(10,(l/2)+1);
w=功率(10,l/2);
d=n%w;
l=l/2;
}
cout这是工作代码

if(l%2==0){
    s=n/pow(10,(l/2)+1);
    w=pow(10,(l/2)-1);
    d=n%w;
    l = l/2 - 1;
} else{
    s=n/pow(10,(l/2) + 1); 
    w=pow(10,l/2); 
    d=n%w; 
    l = l/2;
}
cout<<s * pow(10, l) + d<<std::endl;
#包括
#包括
使用名称空间std;
int main()
{
int n,l=0,a,s,d,w,结果;
cin>>n;
a=n;
while(a!=0)
{
l++;
a=a/10;
}
如果(l%2==0)
{
s=n/ceil(功率(10,(l/2)+1));
w=ceil(功率(10,(l/2)-1));
d=n%w;
结果=s*(ceil(pow(10,(l/2-1)))+d;
}
其他的
{
s=n/ceil(功率(10,l/2+1));
w=ceil(功率(10,l/2));
d=n%w;
结果=s*(ceil(pow(10,(l/2)))+d;
}
cout这是工作代码

if(l%2==0){
    s=n/pow(10,(l/2)+1);
    w=pow(10,(l/2)-1);
    d=n%w;
    l = l/2 - 1;
} else{
    s=n/pow(10,(l/2) + 1); 
    w=pow(10,l/2); 
    d=n%w; 
    l = l/2;
}
cout<<s * pow(10, l) + d<<std::endl;
#包括
#包括
使用名称空间std;
int main()
{
int n,l=0,a,s,d,w,结果;
cin>>n;
a=n;
while(a!=0)
{
l++;
a=a/10;
}
如果(l%2==0)
{
s=n/ceil(功率(10,(l/2)+1));
w=ceil(功率(10,(l/2)-1));
d=n%w;
结果=s*(ceil(pow(10,(l/2-1)))+d;
}
其他的
{
s=n/ceil(功率(10,l/2+1));
w=ceil(功率(10,l/2));
d=n%w;
结果=s*(ceil(pow(10,(l/2)))+d;
}

你能试着一行一行地看吗?@alexb那你为什么不提那行没有做你期望它做的事,你期望它做什么,它做了什么?直接操纵文本会容易得多。你试过一行一行地看吗?@alexb那你为什么不提那行这与您期望它做什么、您期望它做什么以及它做了什么无关?通过直接操纵文本,这将更容易做到。但是如果我
可以,但是如果我
可以,您是否可以尝试使用给定的代码(
从if到last
)我试过这样做:
#include#include使用名称空间std;int main(){int n,l=0,a,s,d,w;cin>>n;a=n;while(a!=0){l++;a=a/10};if(l%2==0){s=n/pow(10,(l/2)+1);w=pow(10,(l/2)-1);d=n%w;l=n%w;l=l=l/2-1;}else(s=n/10,l=2)+pow(1);d=n%w;l=l/2;}这段代码确实对我有用。可能你需要在测试之前编译它!!你有没有尝试过给定的代码(
从if到last
)?12345我得到了1245。我尝试过:
#include#include使用命名空间std;int main(){int n,l=0,a,s,d,w;cin>>n;a=n;while(a!=0){l++;a=a/10;}如果(l%2==0){s=n/pow(10,(l/2)+1;w=pow(10,(l/2)-1;d=n%w;l=l/2-1;}否则{s=n/pow(10,(l/2)+1);w=pow(10,l/2);d=n%w;l=l/2;}这段代码对我来说确实有效。也许你需要在测试前编译它!!