C#で2つのTimeSpanを加算する方法
C#では、TimeSpan構造体を使って時間間隔(期間)を簡単に扱うことができます。本記事では、2つのTimeSpanオブジェクトをAdd()メソッドを使って加算する方法を、サンプルコードとともにわかりやすく解説します。
1. 2つのTimeSpanを用意する
まず、加算の対象となる2つのTimeSpanを作成します。ここでは、FromMinutes()メソッドを使って、それぞれ1分と2分のTimeSpanを生成しています。
TimeSpan t1 = TimeSpan.FromMinutes(1);
TimeSpan t2 = TimeSpan.FromMinutes(2);
2. Add()メソッドで加算する
2つのTimeSpanを加算するには、Add()メソッドを使用します。このメソッドは、呼び出し元のTimeSpanと引数に渡したTimeSpanの合計を表す、新しいTimeSpanインスタンスを返します。
TimeSpan res = t1.Add(t2);
サンプルコード全体
以下は、上記の手順をまとめた完全なサンプルプログラムです。
using System;
using System.Linq;
public class Demo {
public static void Main() {
TimeSpan t1 = TimeSpan.FromMinutes(1);
TimeSpan t2 = TimeSpan.FromMinutes(2);
Console.WriteLine("First TimeSpan: " + t1);
Console.WriteLine("Second TimeSpan: " + t2);
// 加算処理
TimeSpan res = t1.Add(t2);
Console.WriteLine("Resultant TimeSpan: " + res);
}
}
実行結果
First TimeSpan: 00:01:00
Second TimeSpan: 00:02:00
Resultant TimeSpan: 00:03:00
補足:+演算子でも加算できる
実は、TimeSpanは+演算子をオーバーロードしているため、次のようにより簡潔に書くことも可能です。
TimeSpan res = t1 + t2;
どちらの方法でも結果は同じですが、コードの可読性や簡潔さを重視する場合は+演算子を使うのも良い選択です。状況に応じて使い分けましょう。
-
C++で2つの2進数文字列を加算するプログラムの書き方
2つの2進数を表す文字列が与えられたとき、それらを加算した結果を求め、その結果を2進数の文字列として返すことを考えます。2進数とは、0か1のいずれかで表現される数値のことです。2進数同士を足し合わせる際には、以下のような2進数特有の加算ルールに従う必要があります。0+0 → 0 0+1 → 1 1+0 → 1 1+1 → 0(繰り上がり1)入力例str1 = {11}, str2 = {1}出力例100入力例str1 = {110}, str2 = {1}出力例111問題を解くためのアプローチ両方の文字列を末尾(最下位桁)から走査する対応する桁の2進数同士を加算する1と1を足した場合は、その桁
-
Pythonで2つの数値を加算するプログラム:ビット演算による実装方法
この記事では、2つの数値を加算するという問題に対する解法とアプローチについて詳しく解説します。 問題の概要 2つの大きな数値が与えられ、それらを加算した結果を出力することが求められます。 最も単純なアプローチは、オペランド同士を「+」演算子で結ぶ方法です。また、2つの数値をリストなどのイテラブルに格納し、Python標準ライブラリに用意されている組み込み関数 sum() を利用する方法もあります。 しかし、これらのアプローチでは10進数に対して直接演算を行うため、計算コストが増大するという課題があります。 ビット演算を用いた別のアプローチ そこで次に、数値をビット単位で操作する別のアプローチを