პარასკევის დაპროგრამების ამოცანები
1. "numbers.txt" ფაილში ჩაწერილია ნამდვილი რიცხვები. ჩაწერეთ ეს რიცხვები შესაბამისი სპეციფიკაციის ვექტორში. დაწერეთ ფუნქცია, რომელიც დაადგენს არის თუ არა ვექტორის ელემენტი [-10;32] შუალედში. ამ შუალედის გარეთ არსებული ელემენტები თქვენივე ფუნქციის საშუალებით ჩაწერეთ ვექტორში. დაალაგეთ ზრდის მიხედვით და დაბეჭდეთ. ვექტორის ბეჭდვა გააფორმეთ ფუნქციის სახით.
2. კლავიატურიდან შეიტანეთ 22 სიტყვა და ჩაწერეთ შესაბამისი სპეციფიკაციის ვექტორში. დაწერეთ ფუნქცია, რომელიც დაადგენს არის თუ არა ამ ვექტორში სიტყვა "Ball". ამ სიტყვისგან განსხვავებული სიტყვები თქვენივე ფუნქციის საშუალებით ჩაწერეთ ვექტორში. დაითვალეთ და დაბეჭდეთ ძველ ვექტორში სიტყვა "Ball"-ის რაოდენობა. დაბეჭდეთ ახალი ვექტორი 4 სვეტად. ვექტორის ბეჭდვა გააფორმეთ ფუნქციის სახით. რამდენნაირი გზით შეიძლება ბეჭდვის ფუნქციის დაწერა
მეორე ვარიანტი
info.dot ფაილში წერია მთელი რიცხვები .ჩაყარეთ ისინი შესაბამის ვექტორში და მათ შორის რიცხვები [-1;42] შუალედიდან გადაყარეთ ახალ ვექტორში (ფუნქციის გამოყენებით) დაბეჭდეთ ორივე ვექტორი( ფუნქციის გამოყენებით)
2.
შექმენით ფუნქცია ,რომელიც გაარკვევს შეიცავს თუ არა სიტყვა 5ზე მეტ სიმბოლოს. შექმენით ვექტორი რომელშიც შეიტანთ 21 სიტყვას კლავიატურიდან ( მათ შორის 5ზე მეტ სიმბოლიანსაც).... ზემოთ აღნიშნული ფუნქციის გამოყენებით 5ზე მეტ სიმბოლოიანი სიტყვები ცალკე ვექტორში გადაყარეთ... დაბეჭდე ძველ ვექტორში არსებული სიტყვები რომელშიც სიმბოლოთა რაოდენობა არ აღემატება 5-ს....დაბეჭდეთ ახალი ვექტორი და ელემენტები სვეტებად გაყავით ( ანუ ერთ ხაზზე 7 სტრინგი უნდა ეწეროს რა ) რამდენი გზით შეგიძლიათ ვექტორის ბეჭვდვა, ახსენით თითოეული მათგანი) აი, ესენია მგონი არაფერი გამომრჩა )))))))))))

ამოხსნები
» სპოილერის ნახვისთვის დააწკაპუნეთ აქ «
1.
#include <iostream>
#include <vector>
#include <fstream>
#include <algorithm>
using namespace std;
bool Check(double);
void PrintVector(vector <double>);
int main()
{
vector <double> vec;
vector <double> v;
ifstream fin("numbers.txt");
double a;
while(fin>>a)
vec.push_back(a);
for(int i=0;i<vec.size();i++)
if(Check(vec[i])) v.push_back(vec[i]);
sort(v.begin(), v.end());
PrintVector(v);
return 0;
}
bool Check(double k){
return k>=-10 && k<=32;
}
void PrintVector(vector <double> x){
for(int i=0;i<x.size();i++)
cout<<x[i]<<"\t";
cout<<endl;
}
2.
#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
using namespace std;
bool Check(string);
void PrintVector(vector <string>);
int main()
{
vector <string> vec;
vector <string> v;
string a;
for(int i=0;i<22;i++){
cin>>a;
vec.push_back(a);
}
for(int i=0;i<vec.size();i++)
if(Check(vec[i])) v.push_back(vec[i]);
cout<<count(vec.begin(), vec.end(), "Ball")<<endl;
PrintVector(v);
return 0;
}
bool Check(string k){
return k=="Ball";
}
void PrintVector(vector <string> x){
for(int i=0;i<x.size();i++){
cout<<x[i]<<"\t";
if((i+1)%4==0) cout<<endl;
}
cout<<endl;
}
2)
» სპოილერის ნახვისთვის დააწკაპუნეთ აქ «
1.
#include <iostream>
#include <vector>
#include <fstream>
using namespace std;
bool Check(int);
void PrintVector(vector <int>);
int main()
{
vector <int> vec;
vector <int> v;
ifstream fin("info.dot");
int a;
while(fin>>a)
vec.push_back(a);
for(int i=0;i<vec.size();i++)
if(Check(vec[i])) v.push_back(vec[i]);
PrintVector(vec);
PrintVector(v);
return 0;
}
bool Check(int x){
return x>=-1 && x<=42;
}
void PrintVector(vector <int> k){
for(int i=0;i<k.size();i++)
cout<<k[i]<<"\t";
cout<<endl;
}
2.
#include <iostream>
#include <vector>
#include <string>
using namespace std;
bool Check(string);
void PrintVector(vector <string>);
void PrintVector2(vector <string>);
int main()
{
vector <string> vec;
vector <string> v;
string a;
for(int i=0;i<21;i++){
cin>>a;
vec.push_back(a);
}
for(int i=0;i<vec.size();i++)
if(Check(vec[i])) v.push_back(vec[i]);
PrintVector(vec);
PrintVector2(v);
return 0;
}
bool Check(string x){
return x.length()>5;
}
void PrintVector(vector <string> k){
for(int i=0;i<k.size();i++){
if(Check(k[i])) continue;
else cout<<k[i]<<"\t";
}
cout<<endl;
}
void PrintVector2(vector <string> y){
for(int i=0;i<y.size();i++){
cout<<y[i]<<"\t";
if((i+1)%7==0) cout<<endl;
}
}
This post has been edited by LucasArt on 23 Dec 2012, 17:36