SlideShare a Scribd company logo
1 of 15
RiPPro C++講習会
入出力と文字列編
プログラミングをする上で…
プログラムに値を入力して、処理して、結果を出力する
入出力はプログラミングを行う上でとても重要!
どうやって入力して出力するのか、とりあえず、
2つの整数A,Bが与えられ、それらの和を表示する
プログラムを用いて勉強しましょう。
とりあえず写経してみよう
#include<iostream>
using namespace std;
int main(){
int A;
int B;
cin >> A >> B;
cout << A+B <<endl;
return 0;
}
#include<iostream>
using namespace std;
int main(){
int A;
int B;
cin >> A >> B;
cout << A+B << endl;
return 0;
}
上2行はおまじない
int main(){
/*この部分に処理を書く*/
return 0;
}
① “int main(){“
で始まり
”return 0;}”
で終わる!
②文末は “ ; ”(セミコロン)で終わる。
③全角スペースは使わない。
int:integer(整数)
整数の変数 A,Bを宣言
簡単な解説
そもそも変数ってなんだろう?
覚えよう。
変数の宣言とは①??
• プログラム中でデータ(文字列や数値etc)を保持するのに変数(箱)
というものを用います。(データを代入する箱。)
数学の世界で言う、未知数 x,yみたいなもの。
名前 A,int型の箱を用意。
箱に10を代入する。
int A;
A=10;
“=“
人間の世界では、等しいという意味で用いる。
プログラムの世界では、代入。
変数の宣言とは②??
• 変数を宣言する→プログラムに、こういう変数(箱)を使うよ
!というのを教えてあげる。
どういうタイプの変数(箱)で、どんな名前なのか教えてあげ
ないといけない。
宣言の仕方
変数の型(種類)(スペース)名前 ;
ex
int hoge;
double yebi;
string aoa;
int : 整数
double :実数
string:文字列
変数の名前は好きな名前を
使うことができます。
※同じ名前は使えません!
#include<iostream>
using namespace std;
int main(){
int A;
int B;
cin >> A >> B;
cout << A+B << endl;
}
cin :入力関数
cin >> 変数(数字) ;
変数に値を入力する関数
cin >> a >> b >> c;
とすることで、a,b,cに代入すること
ができる.
cout :出力関数
cout << 変数(数字) ;
画面に変数の値を出力する関数.
cout << a << endl;
とすると、aのあとに改行する。
続き
もう少し詳しく…
cin,coutは関数
関数 :何らかの機能を持つ部品。
cinは入力を変数に格納する部品
coutは画面に出力する部品
cin 変数(箱)
cin >> box;
cinが変数(箱)に値を入れてくれる。
cin値
プログラミングの四則演算
足し算 +
引き算 ー
掛け算 *
割り算 /
整数の割り算は切り捨てです。
ex int n=10; cout << n/3 <<endl; output :3
整数だけ使えても仕方ないので
文字列もやってみましょう。
問題
キーボードから文字列を入力して、最後に “kun”を足して
出力してください。
ex
input : yebi
output: yebikun
input : tarou
output :taroukun
おまじないを書く。
#include<iostream>
#include<string>
using namespace std;
int main(){
return 0;
}
方針を考えてみる
1.cin で入力を受け取る
2.受け取って”kun”を足す。
3. cout で最後に出力する。
2を飛ばしてやってみましょう。
#include <iostream>
#include <string>
using namespace std;
int main(){
string s;
cin >> s;
// この部分に"kun"を足して出力する
cout << s << endl;
return 0;
}
実はstringには
足し算が定義されています。
ex
string yebi;
cin >> yebi;
// hello と入力
yebi += "hoge";
cout << yebi << endl;
とすると、
output : hellohoge
となります。
注意!
文字列もプログラムの中で使うときは””で囲みましょう!
囲まなないのは変数と数字だけです!!
別解
#include <iostream>
#include <string>
using namespace std;
int main(){
string hoge;
cin >> hoge;
cout<< hoge <<"kun"<<endl;
}
おしまい。
お疲れ様でした

More Related Content

What's hot

オブジェクト指向入門7
オブジェクト指向入門7オブジェクト指向入門7
オブジェクト指向入門7Kenta Hattori
 
論理思考とプログラミング
論理思考とプログラミング論理思考とプログラミング
論理思考とプログラミングNoritada Shimizu
 
SwiftでRiemann球面を扱う
SwiftでRiemann球面を扱うSwiftでRiemann球面を扱う
SwiftでRiemann球面を扱うhayato iida
 
ピエゾ素子の動的デバイスモデリングに参考となる数式
ピエゾ素子の動的デバイスモデリングに参考となる数式ピエゾ素子の動的デバイスモデリングに参考となる数式
ピエゾ素子の動的デバイスモデリングに参考となる数式Tsuyoshi Horigome
 
Run-time Code Generation and Modal-ML の紹介@PLDIr#2
Run-time Code Generation and Modal-ML の紹介@PLDIr#2Run-time Code Generation and Modal-ML の紹介@PLDIr#2
Run-time Code Generation and Modal-ML の紹介@PLDIr#2Masahiro Sakai
 
富山合同勉強会2015 ジェネリクス談義 C#編 補足
富山合同勉強会2015 ジェネリクス談義 C#編 補足富山合同勉強会2015 ジェネリクス談義 C#編 補足
富山合同勉強会2015 ジェネリクス談義 C#編 補足Kentaro Inomata
 
プログラミング
プログラミングプログラミング
プログラミングsaireya _
 

What's hot (9)

Boost17 cpplinq
Boost17 cpplinqBoost17 cpplinq
Boost17 cpplinq
 
C++ tips4 cv修飾編
C++ tips4 cv修飾編C++ tips4 cv修飾編
C++ tips4 cv修飾編
 
オブジェクト指向入門7
オブジェクト指向入門7オブジェクト指向入門7
オブジェクト指向入門7
 
論理思考とプログラミング
論理思考とプログラミング論理思考とプログラミング
論理思考とプログラミング
 
SwiftでRiemann球面を扱う
SwiftでRiemann球面を扱うSwiftでRiemann球面を扱う
SwiftでRiemann球面を扱う
 
ピエゾ素子の動的デバイスモデリングに参考となる数式
ピエゾ素子の動的デバイスモデリングに参考となる数式ピエゾ素子の動的デバイスモデリングに参考となる数式
ピエゾ素子の動的デバイスモデリングに参考となる数式
 
Run-time Code Generation and Modal-ML の紹介@PLDIr#2
Run-time Code Generation and Modal-ML の紹介@PLDIr#2Run-time Code Generation and Modal-ML の紹介@PLDIr#2
Run-time Code Generation and Modal-ML の紹介@PLDIr#2
 
富山合同勉強会2015 ジェネリクス談義 C#編 補足
富山合同勉強会2015 ジェネリクス談義 C#編 補足富山合同勉強会2015 ジェネリクス談義 C#編 補足
富山合同勉強会2015 ジェネリクス談義 C#編 補足
 
プログラミング
プログラミングプログラミング
プログラミング
 

Similar to 入出力

ぱっと見でわかるC++11
ぱっと見でわかるC++11ぱっと見でわかるC++11
ぱっと見でわかるC++11えぴ 福田
 
Brief introduction of Boost.ICL
Brief introduction of Boost.ICLBrief introduction of Boost.ICL
Brief introduction of Boost.ICLyak1ex
 
競技プログラミングのためのC++入門
競技プログラミングのためのC++入門競技プログラミングのためのC++入門
競技プログラミングのためのC++入門natrium11321
 
C言語 学習教材
C言語 学習教材C言語 学習教材
C言語 学習教材Jun MITANI
 
C言語 学習教材
C言語 学習教材C言語 学習教材
C言語 学習教材Jun MITANI
 
Processing資料(2) 再帰
Processing資料(2) 再帰Processing資料(2) 再帰
Processing資料(2) 再帰reona396
 
Python physicalcomputing
Python physicalcomputingPython physicalcomputing
Python physicalcomputingNoboru Irieda
 
組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門Norishige Fukushima
 
C++0x in programming competition
C++0x in programming competitionC++0x in programming competition
C++0x in programming competitionyak1ex
 
C++0x in programming competition
C++0x in programming competitionC++0x in programming competition
C++0x in programming competitionyak1ex
 
新しい並列for構文のご提案
新しい並列for構文のご提案新しい並列for構文のご提案
新しい並列for構文のご提案yohhoy
 
C++0xの概要(デブサミ2010)
C++0xの概要(デブサミ2010)C++0xの概要(デブサミ2010)
C++0xの概要(デブサミ2010)Akira Takahashi
 
2011年10月28日
2011年10月28日2011年10月28日
2011年10月28日nukaemon
 
20171212 titech lecture_ishizaki_public
20171212 titech lecture_ishizaki_public20171212 titech lecture_ishizaki_public
20171212 titech lecture_ishizaki_publicKazuaki Ishizaki
 
2008.10.18 L4u Tech Talk
2008.10.18 L4u Tech Talk2008.10.18 L4u Tech Talk
2008.10.18 L4u Tech Talkmitamex4u
 
Boost.Coroutine
Boost.CoroutineBoost.Coroutine
Boost.Coroutinemelpon
 

Similar to 入出力 (20)

ぱっと見でわかるC++11
ぱっと見でわかるC++11ぱっと見でわかるC++11
ぱっと見でわかるC++11
 
#5:プログラミングの基本
#5:プログラミングの基本#5:プログラミングの基本
#5:プログラミングの基本
 
Brief introduction of Boost.ICL
Brief introduction of Boost.ICLBrief introduction of Boost.ICL
Brief introduction of Boost.ICL
 
競技プログラミングのためのC++入門
競技プログラミングのためのC++入門競技プログラミングのためのC++入門
競技プログラミングのためのC++入門
 
C言語 学習教材
C言語 学習教材C言語 学習教材
C言語 学習教材
 
C day2
C day2C day2
C day2
 
C言語 学習教材
C言語 学習教材C言語 学習教材
C言語 学習教材
 
Processing資料(2) 再帰
Processing資料(2) 再帰Processing資料(2) 再帰
Processing資料(2) 再帰
 
Python physicalcomputing
Python physicalcomputingPython physicalcomputing
Python physicalcomputing
 
組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門
 
C++0x in programming competition
C++0x in programming competitionC++0x in programming competition
C++0x in programming competition
 
Hupc 1
Hupc 1Hupc 1
Hupc 1
 
C++0x in programming competition
C++0x in programming competitionC++0x in programming competition
C++0x in programming competition
 
新しい並列for構文のご提案
新しい並列for構文のご提案新しい並列for構文のご提案
新しい並列for構文のご提案
 
講座C入門
講座C入門講座C入門
講座C入門
 
C++0xの概要(デブサミ2010)
C++0xの概要(デブサミ2010)C++0xの概要(デブサミ2010)
C++0xの概要(デブサミ2010)
 
2011年10月28日
2011年10月28日2011年10月28日
2011年10月28日
 
20171212 titech lecture_ishizaki_public
20171212 titech lecture_ishizaki_public20171212 titech lecture_ishizaki_public
20171212 titech lecture_ishizaki_public
 
2008.10.18 L4u Tech Talk
2008.10.18 L4u Tech Talk2008.10.18 L4u Tech Talk
2008.10.18 L4u Tech Talk
 
Boost.Coroutine
Boost.CoroutineBoost.Coroutine
Boost.Coroutine
 

Recently uploaded

新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdffurutsuka
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 

Recently uploaded (9)

新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 

入出力