标签: modulus

如何在Java中有效地使用模数运算符

我正在用Java处理大学工作,处理货币问题.为此,我建议使用ints而不是double,然后在打印语句时将其转换为美元值.

一切正常,直到我对数字4005进行计算(如$ 40.05表示为int).我正在粘贴我遇到问题的代码部分,如果有人能告诉我我做错了什么,我将不胜感激.

import java.io.*;
class modumess {
    public static void main(String[] args) {
        int money = 4005; //Amount in cents, so $40.05;

        // Represent as normal currency
        System.out.printf("$%d.%d", money/100, money%100);
    }
}
Run Code Online (Sandbox Code Playgroud)

上面的代码在运行时显示40.5美元,而不是40.05美元.是什么赋予了?

请注意,这是我的作业,我想学习,所以我真的很感激这里解决问题的根源,而不仅仅是一个简单的解决方案.

编辑:在Finbarr的回答之后,我在代码中添加了以下内容,似乎解决了这个问题:

if (money%100 < 10) {
            format = "$%d.0%d";
        }
Run Code Online (Sandbox Code Playgroud)

这是一个很好的方法,还是我在这里过于复杂?

编辑:我只想说清楚,这是Finbarr和Wes的回答,这对我有帮助,我接受了Wes的答案,因为它让我更清楚如何继续.

java currency modulus

2
推荐指数
1
解决办法
2510
查看次数

使用模数php检测每个4

我试图检测每个第4个帖子,在我的布局中使用模数方法插入额外的代码,但我不能得到它.

这是我的一个简短例子:

<?php if (have_posts()) : ?>
<?php $count=0;?>   
<?php while (have_posts()) : the_post(); ?>

<div class="column">

<!--content-->

</div> 

    <?php
            if ($count % 4 == 0){     
                echo '<div class="clear"></div>';
            }      
            $count++;       
            ?>

<?php endwhile; ?>
<?php endif; ?>
Run Code Online (Sandbox Code Playgroud)

所有这些都在while循环中.我究竟做错了什么?谢谢.

php wordpress count modulus

2
推荐指数
1
解决办法
4359
查看次数

模块化指数

在C/C++我怎样才能计算(a^b)%m其中b不适合64位?换句话说,有没有办法用b%m而不是b?来计算上述值.

是否有任何算法可以在O(log(b))时间或O(log(b%m))时间计算上述结果?

c exponentiation modulus

2
推荐指数
1
解决办法
1439
查看次数

float fmodf(float_x,float_y)函数,math.h,c ++

你好,我希望有人可以帮助我.

我正在使用math.h中的float fmodf(float_x,float_y)函数.

我能够正确编码,但我只是想知道有没有人知道函数的确切代码是什么,所以我可以更好地理解它

c++ floating-point math.h modulus fmodf

2
推荐指数
1
解决办法
861
查看次数

openssl:我如何从模数中获取公钥

我使用openssl生成一对密钥:

shell> ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/mike/.ssh/id_rsa): /path/to/test_rsa
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /path/to/test_rsa.
Your public key has been saved in /path/to/test_rsa.pub.
Run Code Online (Sandbox Code Playgroud)

然后,我从私钥生成模数:

shell> openssl rsa -in /path/to/test_rsa -noout -modulus > /path/to/modulus.txt
Run Code Online (Sandbox Code Playgroud)

现在,有没有办法从模数中获取test_rsa.pub(公钥)?

php openssl rsa modulus

2
推荐指数
1
解决办法
3583
查看次数

MATLAB中向量的绝对值

如果我有一个向量: A=[1,1,1] 我知道它有长度,SQRT((1 ^ 2)+(1 ^ 2)+(1 ^ 2))= SQRT(3)=约1.73

但是我如何在MATLAB中做到这一点?

我试过了:

abs(A) 
Run Code Online (Sandbox Code Playgroud)

但这只返回数组中每个元素的绝对值.所以它只返回相同的数组,如下所示:

B=abs(A) 

B=[1,1,1] 
Run Code Online (Sandbox Code Playgroud)

如何让MATLAB给出整个向量的绝对值,所以我得到一个标量输出?

我宁愿用单个函数来做,而不是单独操作向量中的每个元素,因为我的代码变得非常混乱.

谢谢!

matlab vector absolute modulus

2
推荐指数
2
解决办法
1万
查看次数

在IF语句中使用模运算符

我试图在我的if语句中使用模数,但是我无法使其工作或在任何地方找到这样的例子,它与我所做的其他语言不同.到目前为止,我试过了

if ($counter % "10" = 2)
  {
    echo ($counter);
  echo "Have a good morning!";
  }
Run Code Online (Sandbox Code Playgroud)

if ($counter % 10 = 2)
  {
    echo ($counter);
  echo "Have a good morning!";
  }
Run Code Online (Sandbox Code Playgroud)

if (($counter % "10") = 2)
  {
    echo ($counter);
  echo "Have a good morning!";
  }
Run Code Online (Sandbox Code Playgroud)

然而,仍然没有任何工作,我收到了错误

Parse error: syntax error, unexpected '=' in H:\STUDENT\S0190204\GGJ\index.php on line 50
Run Code Online (Sandbox Code Playgroud)

虽然这可能是因为语法不正确,如果有人可以对此有所了解,或者指向一个站点的方向,显示在php中的if语句中使用的模数我喜欢它.谢谢

php if-statement modulus

2
推荐指数
1
解决办法
1450
查看次数

运行时发生奇怪的崩溃

有谁知道,为什么下面的代码崩溃,用g ++编译?

#include <iostream>

unsigned long getSumDivisors(const unsigned long number) {
    unsigned long sum = 0;
    for(unsigned long i = 0; i < number; ++ i) {
        if(number % i == 0) {
            sum += i;
        }
    }
    return sum;
}

int main() {
    std::cout << getSumDivisors(5);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

当我删除sum + = i; 它不会崩溃.

我试着在windows和linux linaro下编译它

g ++(Ubuntu/Linaro 4.7.3-1ubuntu1)4.7.3版权所有©2012 Free Software Foundation,Inc.这是免费软件; 查看复制条件的来源.没有保修; 甚至不适用于适销性或特定用途的适用性.

g ++(tdm-2)4.8.1版权所有(C)2013 Free Software Foundation,Inc.这是免费软件; 查看复制条件的来源.没有保修; 甚至不适用于适销性或特定用途的适用性.

c++ gcc undefined-behavior modulus

2
推荐指数
1
解决办法
101
查看次数

从第2项开始,每12项添加php代码

我有一些循环.如何优化此代码,从第2项开始每12项执行一次.我正在为每个+12项使用硬编码的代码,但当然这不是一个好的解决方案:)我知道这很容易做,我试图用模数运算符来做,但它的工作方式不正确.

<?php if( ($counter == 2) || ($counter == 14) || ($counter == 26) || ($counter == 38) || ($counter == 50) || ($counter == 62) || ($counter == 74) || ($counter == 86) || ($counter == 98 .... ?>
Run Code Online (Sandbox Code Playgroud)

感谢帮助!

php each loops if-statement modulus

2
推荐指数
1
解决办法
47
查看次数

装配x86中的模数

我的教授给了我一个转换,将这个C代码转换为汇编代码

int k = 0, S = 0;
for (k=0; k<100; k++)
{
if (k%2 == 0)
S += k;
else
S -= k;
}
Run Code Online (Sandbox Code Playgroud)

装配只是我课程的一小部分,所以我们还没有涉及很多技术部分.我唯一的问题是模数部分,我们只采用了除法,从未学过如何使用模数.这是我进入我的工作

MOV CX, 0; counter
MOV AX, 0; This represents S, we haven't learned how to declare variables in assembly, so we use registers instead)
Loop1: 
      CMP [Haven't done the modulus condition]
      JE iftrue
      JNE ifwrong
iftrue:
      ADD AX, CX
      INC CX
      CMP CX, 99
      JL Loop1
ifwrong:
      SUB AX, CX
      INC CX
      CMP CX, …
Run Code Online (Sandbox Code Playgroud)

x86 assembly modulus

2
推荐指数
1
解决办法
2021
查看次数