備忘録も兼ねて ٩(ˊᗜˋ*)و.
配列の中の数を足す
hairetsuplus.cpp
#include<iostream>
#include<vector>
using namespace std;
int main(){
vector<int> xs{1,2,3};
vector<int> ys;
for(auto x:xs){
ys.emplace_back(x+10);
}
for(auto y:ys){
cout<<y<<endl;
}
}
11
12
13
hairetsuplus.hs
main = print $ map(+10)[1,2,3]
[11,12,13]
配列の合計値を算出
wa.cpp
#include<iostream>
#include<vector>
using namespace std;
int main(){
vector<int> xs{1,2,3};
int total = 0;
for(auto x:xs){
total += x;
}
cout<<total<<endl;
}
6
wa.hs
main = print $ foldr (+) 0 [1,2,3]
6
配列のある数字以上の数を取り出す
bignumberinsert.cpp
#include<iostream>
#include<vector>
using namespace std;
int main(){
vector<int> xs{1,2,3,4,5,6};
vector<int> ys;
for(auto x:xs){
if(x>3){
ys.emplace_back(x);
}
}
for(auto y:ys){
cout<<y<<endl;
}
}
4
5
6
bignumberinsert.hs
main = print $ filter(>3)[1,2,3,4,5,6]
[4,5,6]
関数をかけあわせる
kansuu.cpp
#include<iostream>
#include<vector>
using namespace std;
int f(int x){return x+10;}
int g(int x){return x*x;}
int main(){
vector<int>xs{1,2,3};
vector<int>ys;
for(auto x:xs){
ys.emplace_back(g(f(x)));
}
for(auto y:ys){
cout<<y<<endl;
}
}
121
144
169
kansuu.hs
f x = x+10
g x = x * x
main = print $ map(g.f)[1,2,3]
[121,144,169]