66.1
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
int a, b, c;
int wa, wb;
int x, y;
ifstream odczyt("trojki.txt");
ofstream zapis("wyniki_1.txt");
while(!odczyt.eof())
{
odczyt>>a;
odczyt>>b;
odczyt>>c;
x=a;
y=b;
wa=0;
wb=0;
while(a!=0)
{
wa=wa+a%10;
a=a/10;
}
while(b!=0)
{
wb=wb+b%10;
b=b/10;
}
if(wa+wb==c)
{
zapis<<x<<" "<<y<<" "<<c<<endl;
}
}
odczyt.close();
zapis.close();
return 0;
}
66.3
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
int a, b, c;
int pa=0, pb=0, pc=0;
int poprzedni=0;
int obecny;
ifstream odczyt("trojki.txt");
ofstream zapis("wyniki_3.txt");
while(!odczyt.eof())
{
odczyt>>a;
odczyt>>b;
odczyt>>c;
obecny=0;
if((a*a+b*b==c*c)||(a*a+c*c==b*b)||(b*b+c*c==a*a))
{
obecny=1;
}
if(poprzedni==1 && obecny==1)
{
zapis<<pa<<" "<<pb<<" "<<pc<<endl;
zapis<<a<<" "<<b<<" "<<c<<endl;
}
poprzedni=obecny;
pa=a;
pb=b;
pc=c;
}
odczyt.close();
zapis.close();
return 0;
}
66.2
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
int a, b, c;
bool a_czy_pierwsza;
bool b_czy_pierwsza;
ifstream odczyt("trojki.txt");
ofstream zapis("wyniki_2.txt");
while(!odczyt.eof())
{
odczyt>>a;
odczyt>>b;
odczyt>>c;
a_czy_pierwsza=true;
for(int i=2; i<a; i++)
{
if(a%i==0)
{
a_czy_pierwsza=false;
break;
}
}
b_czy_pierwsza=true;
for(int i=2; i<b; i++)
{
if(b%i==0)
{
b_czy_pierwsza=false;
break;
}
}
if((a_czy_pierwsza==true && a!=1)&&(b_czy_pierwsza==true && b!=1)&&(a*b==c))
{
zapis<<a<<" "<<b<<" "<<c<<endl;
}
}
odczyt.close();
zapis.close();
return 0;
}
66.4
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
int a, b, c;
int ile=0;
int dl=0;
int max_dl=0;
ifstream odczyt("trojki.txt");
ofstream zapis("wyniki_4.txt");
while(!odczyt.eof())
{
odczyt>>a;
odczyt>>b;
odczyt>>c;
if((a+b>c)&&(a+c>b)&&(b+c>a))
{
ile++;
dl++;
}
else
{
dl=0;
}
if( dl>max_dl)
{
max_dl=dl;
}
}
zapis<<"Ilość trójek z których można zbudować trójkąt = "<<ile<<endl;
zapis<<"Maksymalny podciąg wynosi "<<max_dl;
odczyt.close();
zapis.close();
return 0;
}