自分のブログ名

物理の空き地 by M.E_K

日々の学び、感じたことを書いております。ブログ移行中->https://physics-mek.com

移転しました。

リダイレクトします。

C/C++

C/C++ double型からint型へ変換

(int)で型を変換すると,切り下げになる. #include<iostream> int main() { double d = 10.811; int i; i = (int)d;#doubleからintへ変換している std::cout << i << std::endl; } #output 10そのため,四捨五入がしたい場合は,double型に対して0.5を足してdouble型</iostream>…

C/C++で二次関数のFitting

【やったこと】 C/C++で二次関数の最小二乗法を行った.計算では,逆行列・行列の積をやった. 【わかったこと】 C/C++にはPythonのような最小二乗法のライブラリはない (おそらく,あるなら教えてほしい) 行列は簡単(手計算は地獄).ちなみにfor文でぶんま…

C/C++ filesystem ディレクトリから指定拡張子をvectorに詰める

pythonのglob関数をC/C++で使いたい. それができるといわれる"glob.h"なるものがあるらしい.しかし,それはLinuxのライブラリらしくWindowsでは使えそうになかった.(私の知識不足感は否めない)そこで,filesystemと呼ばれるライブラリでも同じようにglob的…

【boost】LNK1104 Cannot open file "libboost_date_time-vc142-mt-gd-x32-1_74.lib"

Visual Studio2019でboostライブラリを使うと,以下のエラーが出た. LNK1104 Cannot open file "libboost_date_time-vc142-mt-gd-x32-1_74.lib" ※バージョンによって1_74が違う【対処法】 1. "C:\boost_1_74_0"のディレクトリ内にある"bootstrap.bat"を実行…

C++ Python 計算速度比較

はじめに C++はよく計算が速いといわれ、Pythonは速度は出ないが対話的にコーディングが出来るといわれる気がする。C++が本当に速いかどうか、きになったので比較してみた。 評価手法 for文で10億回足し合わせる計算をPythonとC++で同じ計算をした。 計測時…

visual studio C/C++ 外部ライブラリ「boost」 format関数を使って楽をする

pythonのようなformat関数がC++には標準でなかった。pythonのformatが便利すぎたので、C++でも同じように使える外部ライブラリ「boost」を使ってみた。 https://www.boost.org/users/history/version_1_74_0.html 上記のURLでboostのzipファイルをダウンロー…

C++ fileを一行ごとに読む

#include <filesystem> #include <string> namespace fs = std::filesystem; int main() { std::vector<double>vx; std::vector<double>vy; std::string filepath = "C:\\sample.txt" std::ifstream ifs (filepath); if (!ifs){ throw std::exception(("cannot open" + filepath).c_str()); } std</double></double></string></filesystem>…