0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

paizaラーニングレベルアップ問題集の【実数をフォーマット指定して出力】をやってみた。

Posted at

paizaラーニングレベルアップ問題集の【実数をフォーマット指定して出力】をやってみました。


問題
1つの実数を出力1(0.001以上99.999未満)

1つの実数を出力2(0.001以上1兆未満)

1つの実数を出力3(小数第3位まで出力)

1つの実数を出力4(小数第M位まで出力)

複数の実数を出力


C
1つの実数を出力1(0.001以上99.999未満)
#include <stdio.h>

int main() {
	double n;
	scanf("%lf", &n);
	printf("%lf\n", n); //小数第6位まで出力されるが正解
	return 0;
}
1つの実数を出力2(0.001以上1兆未満)
#include <stdio.h>

int main() {
	char n[17];
	scanf("%s", n);
	printf("%s\n", n);
	return 0;
}
1つの実数を出力3(小数第3位まで出力)
#include <stdio.h>

int main() {
	double n;
	scanf("%lf", &n);
	printf("%.3lf\n", n);
	return 0;
}
1つの実数を出力4(小数第M位まで出力)
#include <stdio.h>

int main() {
	double n;
	int m;
	scanf("%lf %d", &n, &m);
	printf("%.*lf\n", m, n);
	return 0;
}
複数の実数を出力
#include <stdio.h>

int main() {
	int q;
	scanf("%d", &q);
	while (q--) {
		double n;
		int m;
		scanf("%lf %d", &n, &m);
		printf("%.*lf\n", m, n);
	}
	return 0;
}

C++
1つの実数を出力1(0.001以上99.999未満)
#include <iostream>
using namespace std;

int main() {
	double n;
	cin >> n;
	cout << n << endl; //有効数字6桁で出力されるが制約条件下では正解
	return 0;
}
1つの実数を出力2(0.001以上1兆未満)
#include <iostream>
using namespace std;

int main() {
	string n;
	cin >> n;
	cout << n << endl;
	return 0;
}
1つの実数を出力3(小数第3位まで出力)
#include <iostream>
#include <iomanip>
using namespace std;

int main() {
	double n;
	cin >> n;
	cout << fixed << setprecision(3) << n << endl;
	return 0;
}
1つの実数を出力4(小数第M位まで出力)
#include <iostream>
#include <iomanip>
using namespace std;

int main() {
	double n;
	int m;
	cin >> n >> m;
	cout << fixed << setprecision(m) << n << endl;
	return 0;
}
複数の実数を出力
#include <iostream>
#include <iomanip>
using namespace std;

int main() {
	int q;
	cin >> q;
	while (q--) {
		double n;
		int m;
		cin >> n >> m;
		cout << fixed << setprecision(m) << n << endl;
	}
	return 0;
}

C#
1つの実数を出力1(0.001以上99.999未満)
using System;

class Program
{
	public static void Main()
	{
		Console.WriteLine(double.Parse(Console.ReadLine()));
	}
}
1つの実数を出力2(0.001以上1兆未満)
using System;

class Program
{
	public static void Main()
	{
		Console.WriteLine(Console.ReadLine());
	}
}
1つの実数を出力3(小数第3位まで出力)
using System;

class Program
{
	static void Main()
	{
		double n = double.Parse(Console.ReadLine());
		Console.WriteLine(n.ToString("F3"));
	}
}
1つの実数を出力4(小数第M位まで出力)
using System;

class Program
{
	static void Main()
	{
		string[] nm = Console.ReadLine().Split();
		Console.WriteLine(double.Parse(nm[0]).ToString("F" + nm[1]));
	}
}
複数の実数を出力
using System;

class Program
{
	static void Main()
	{
		for (int q = int.Parse(Console.ReadLine()); q > 0; q--) {
			string[] nm = Console.ReadLine().Split();
			Console.WriteLine(double.Parse(nm[0]).ToString("F" + nm[1]));
		}
	}
}

Go
1つの実数を出力1(0.001以上99.999未満)
package main
import "fmt"

func main() {
	var n float64
	fmt.Scan(&n)
	fmt.Println(n)
}
1つの実数を出力2(0.001以上1兆未満)
package main
import "fmt"

func main() {
	var n string
	fmt.Scan(&n)
	fmt.Println(n)
}
1つの実数を出力3(小数第3位まで出力)
package main
import "fmt"

func main() {
	var n float64
	fmt.Scan(&n)
	fmt.Printf("%.3f\n", n)
}
1つの実数を出力4(小数第M位まで出力)
package main
import "fmt"

func main() {
	var n float64
	var m int
	fmt.Scan(&n, &m)
	fmt.Printf("%.*f\n", m, n)
}
複数の実数を出力
package main
import "fmt"

func main() {
	var Q int
	fmt.Scan(&Q)
	for q := 0; q < Q; q++ {
		var n float64
		var m int
		fmt.Scan(&n, &m)
		fmt.Printf("%.*f\n", m, n)
	}
}

Java
1つの実数を出力1(0.001以上99.999未満)
import java.util.*;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.println(sc.nextDouble());
		sc.close();
	}
}
1つの実数を出力2(0.001以上1兆未満)
import java.util.*;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.println(sc.next());
		sc.close();
	}
}
1つの実数を出力3(小数第3位まで出力)
import java.util.*;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.printf("%.3f%n", sc.nextDouble());
		sc.close();
	}
}
1つの実数を出力4(小数第M位まで出力)
import java.util.*;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		double n = sc.nextDouble();
		int m = sc.nextInt();
		System.out.printf("%." + m + "f%n", n);
		sc.close();
	}
}
複数の実数を出力
import java.util.*;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		for (int q = sc.nextInt(); q > 0 ; q--) {
			double n = sc.nextDouble();
			int m = sc.nextInt();
			System.out.printf("%." + m + "f%n", n);
		}
		sc.close();
	}
}

JavaScript
1つの実数を出力1(0.001以上99.999未満)
console.log(Number(require("fs").readFileSync("/dev/stdin", "utf8")));
1つの実数を出力2(0.001以上1兆未満)
console.log(require("fs").readFileSync("/dev/stdin", "utf8").trim());
1つの実数を出力3(小数第3位まで出力)
console.log(Number(require("fs").readFileSync("/dev/stdin", "utf8").trim()).toFixed(3));
1つの実数を出力4(小数第M位まで出力)
const [n, m] = require("fs").readFileSync("/dev/stdin", "utf8").trim().split(' ').map(Number);
console.log(n.toFixed(m));
複数の実数を出力
const [Q, ...NM] = require("fs").readFileSync("/dev/stdin", "utf8").trim().split('\n').map(s => s.split(' ').map(Number));
for (var q = 0; q < Q[0]; q++) {
	let [n, m] = NM[q]; 
	console.log(n.toFixed(m));
}

Kotlin
1つの実数を出力1(0.001以上99.999未満)
fun main() {
	println(readLine()!!.toDouble())
}
1つの実数を出力2(0.001以上1兆未満)
fun main() {
	println(readLine())
}
1つの実数を出力3(小数第3位まで出力)
fun main() {
	println("%.3f".format(readLine()!!.toDouble()))
}
1つの実数を出力4(小数第M位まで出力)
import java.util.*;

fun main() {
	val sc = Scanner(System.`in`)
	val n = sc.nextDouble()
	val m = sc.nextInt()
	println("%.${m}f".format(n))
	sc.close()
}
複数の実数を出力
import java.util.*;

fun main() {
	val sc = Scanner(System.`in`)
	for (q in 1..sc.nextInt()) {
		val n = sc.nextDouble()
		val m = sc.nextInt()
		println("%.${m}f".format(n))
	}
	sc.close()
}

PHP
1つの実数を出力1(0.001以上99.999未満)
<?php
	echo floatval(trim(fgets(STDIN))), PHP_EOL;
?>
1つの実数を出力2(0.001以上1兆未満)
<?php
	echo trim(fgets(STDIN)), PHP_EOL;
?>
1つの実数を出力3(小数第3位まで出力)
<?php
	echo number_format(floatval(trim(fgets(STDIN))), 3, '.', ''), PHP_EOL;
?>
1つの実数を出力4(小数第M位まで出力)
<?php
	[$n, $m] = explode(' ', trim(fgets(STDIN)));
	echo number_format($n, $m, '.', ''), PHP_EOL;
?>
複数の実数を出力
<?php
	for ($q = intval(trim(fgets(STDIN))); $q > 0; $q--) {
		[$n, $m] = explode(' ', trim(fgets(STDIN)));
		echo number_format($n, $m, '.', ''), PHP_EOL;
	}
?>

Perl
1つの実数を出力1(0.001以上99.999未満)
$n = 0 + <STDIN>;
print $n, $/;
1つの実数を出力2(0.001以上1兆未満)
chomp(my $n = <STDIN>);
print $n, $/;
1つの実数を出力3(小数第3位まで出力)
print sprintf("%.3f$/", <STDIN>);
1つの実数を出力4(小数第M位まで出力)
my @nm = split(' ', <STDIN>);
print sprintf("%.*f$/", $nm[1], $nm[0]);
複数の実数を出力
for (my $q = <STDIN>; $q > 0; $q--) {
	my @nm = split(' ', <STDIN>);
	print sprintf("%.*f$/", $nm[1], $nm[0]);
}

Python3
1つの実数を出力1(0.001以上99.999未満)
print(float(input()))
1つの実数を出力2(0.001以上1兆未満)
print(input())
1つの実数を出力3(小数第3位まで出力)
print(f"{float(input()):.3f}")
1つの実数を出力4(小数第M位まで出力)
n, m = input().split()
print(f"{float(n):.{m}f}")
複数の実数を出力
for _ in range(int(input())):
	n, m = input().split()
	print(f"{float(n):.{m}f}")

Ruby
1つの実数を出力1(0.001以上99.999未満)
p gets.to_f
1つの実数を出力2(0.001以上1兆未満)
puts gets
1つの実数を出力3(小数第3位まで出力)
puts "%.3f" % gets.to_f
1つの実数を出力4(小数第M位まで出力)
n, m = gets.split
puts "%.#{"%d" % m.to_i}f" % n.to_f
複数の実数を出力
gets.to_i.times do
	n, m = gets.split
	puts "%.#{"%d" % m.to_i}f" % n.to_f
end

Scala
1つの実数を出力1(0.001以上99.999未満)
import scala.io.StdIn._

object Main extends App{
	println(readDouble())
}
1つの実数を出力2(0.001以上1兆未満)
import scala.io.StdIn._

object Main extends App{
	println(readLine())
}
1つの実数を出力3(小数第3位まで出力)
import scala.io.StdIn._

object Main extends App{
	printf("%.3f\n", readDouble())
}
1つの実数を出力4(小数第M位まで出力)
import scala.io.StdIn._

object Main extends App{
	val Array(n, m) = readLine().split(" ")
	printf(s"%.${m}f\n", n.toDouble)
}
複数の実数を出力
import scala.io.StdIn._

object Main extends App{
	for (_ <- 1 to readInt()) {
		val Array(n, m) = readLine().split(" ")
		printf(s"%.${m}f\n", n.toDouble)
	}
}

Swift
1つの実数を出力1(0.001以上99.999未満)
print(Double(readLine()!)!)
1つの実数を出力2(0.001以上1兆未満)
print(readLine()!)
1つの実数を出力3(小数第3位まで出力)
import Foundation

print(String(format: "%.3f", Double(readLine()!)!))
1つの実数を出力4(小数第M位まで出力)
import Foundation

let nm = readLine()!.split(separator: " ")
let n = Double(nm[0])!
let m = Int(nm[1])!
print(String(format: "%.\(m)f", n))
複数の実数を出力
import Foundation

for _ in 1...Int(readLine()!)! {
	let nm = readLine()!.split(separator: " ")
	let n = Double(nm[0])!
	let m = Int(nm[1])!
	print(String(format: "%.\(m)f", n))
}
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?