]̌vZs܂B


̐Ƃ̏]͑̌Ŗ`ƂĂ܂AC++i%Zqfmod֐jł͕̐ɂȂ܂B܂AC++̏]Zq͐^̂ݒ`Ă܂B
Math::mod͏]̌vZ𕂓_^ɊgƂƂɁA̐Ƃ̋֐IɂĂ܂Boł͎֐̈ʑlƂ邱Ƃ܂Å֐gƈʑłł͈̔͂̏]܂BifswitchŒlƂɏ򂵂Ăꍇɂ͓ɖ𗧂܂B

Ƃ΁A-450360Ŋ]ƂꍇA
{{{
 -90 == -450 % 360
 270 == Math::mod(-450, 360)
}}}
%Zqł͏]̐ɂȂĂ܂܂AMath::modgƐ̐œ邱Ƃł܂B֐Otŕ`悷Ɖ}̂悤ɂȂ܂B

[img[image/Math.mod.png]]


|!Psychlops::mod()|mod(double lhs, double rhs)|]vZ܂B|
|~|~|double lhs: Ӎi鐔jw肵܂B|
|~|~|double rhs: EӍi鐔jw肵܂B|


{{{
#include <psychlops.h>
using namespace Psychlops;

void psychlops_main() {
	Canvas display(Canvas::fullscreen);

	double upper_v = display.getVcenter()-100, lower_v = display.getVcenter()+100;

	while(!Input::get(Keyboard::esc)) {
		display.line(display.getHcenter()-100, upper_v, display.getHcenter()+100, upper_v, Color::white);
		display.line(display.getHcenter()-100, lower_v, display.getHcenter()+100, lower_v, Color::white);
		display.line(display.getHcenter(), upper_v+10, display.getHcenter(), upper_v-10, Color::white);
		display.line(display.getHcenter(), lower_v+10, display.getHcenter(), lower_v-10, Color::white);
		display.msg("C++ %", display.getHcenter()-100, upper_v -20, Color::white);
		display.msg("Math::mod", display.getHcenter()-100, lower_v -20, Color::white);

		for(int i=-100; i<100; i++) {
			display.pix(i+display.getHcenter(), upper_v - i%10, Color::red);
			display.pix(i+display.getHcenter(), lower_v - Math::mod(i, 10), Color::green);
		}
		display.flip();
	}
}
}}}