begin SetWindowSize(w,h); // поле для графика в окне var xLeft:=50; var yLeft:=50; var xRight:=w-xLeft; var yRight:=h-yLeft; // интервалы по осям var ax:=-12.0; var bx:=12.0; var hx:=1.0; var ay:=-6.5; // минимум f(x) с запасом var by:=6.5; var hy:=0.5; // масштабы по осям var mx:=(xRight-xLeft)/(bx-ax); var my:=(yRight-yLeft)/(by-ay); // точка начала координат графика var x0:=xLeft+Trunc(abs(ax)*mx); var y0:=yRight-Trunc(abs(ay)*my); // рисование координатных осей Line(xLeft,y0,xRight+10,y0); Line(x0,yLeft-10,x0,yRight); SetFontSize(12); SetFontColor(clBlue); TextOut(xRight+15,y0-10,'X'); TextOut(x0-4,yLeft-30,'Y'); SetFontSize(8); SetFontColor(clGreen); // рисование засечек var s:string; for var i:=1 to Round((bx-ax)/hx)+1 do begin var num:=ax+(i-1)*hx; var x:=xLeft+Trunc(mx*(num-ax)); Line(x,y0-3,x,y0+3); Str(num,s); if abs(num)>1E-15 then TextOut(x-TextWidth(s) div 2,y0+10,s) end; for var i:=1 to Round((by-ay)/hy)+1 do begin var num:=ay+(i-1)*hy; var y:=yRight-Trunc(my*(num-ay)); Line(x0-3,y,x0+3,y); Str(num,s); if abs(num)>1E-15 then TextOut(x0+7,y-TextHeight(s) div 2,s) end; TextOut(x0-10,y0+10,'0'); // собственно график var xi:=ax; while xi<=bx do begin var yi:=f(xi); var x:=x0+Round(xi*mx); var y:=y0-Round(yi*my); if (y>=yLeft) and (y<=yRight) then SetPixel(x,y,clRed); xi+=1e-3 end end.
begin SetWindowSize(w,h); // поле для графика в окне var xLeft:=50; var yLeft:=50; var xRight:=w-xLeft; var yRight:=h-yLeft; // интервалы по осям var ax:=-15.0; var bx:=15.0; var hx:=1.0; var ay:=-6.5; // минимум f(x) с запасом var by:=6.5; var hy:=0.5; // масштабы по осям var mx:=(xRight-xLeft)/(bx-ax); var my:=(yRight-yLeft)/(by-ay); // точка начала координат графика var x0:=xLeft+Trunc(abs(ax)*mx); var y0:=yRight-Trunc(abs(ay)*my); // рисование координатных осей Line(xLeft,y0,xRight+10,y0); Line(x0,yLeft-10,x0,yRight); SetFontSize(12); SetFontColor(clBlue); TextOut(xRight+15,y0-10,'X'); TextOut(x0-4,yLeft-30,'Y'); SetFontSize(8); SetFontColor(clGreen); // рисование засечек var s:string; for var i:=1 to Round((bx-ax)/hx)+1 do begin var num:=ax+(i-1)*hx; var x:=xLeft+Trunc(mx*(num-ax)); Line(x,y0-3,x,y0+3); Str(num,s); if abs(num)>1E-15 then TextOut(x-TextWidth(s) div 2,y0+10,s) end; for var i:=1 to Round((by-ay)/hy)+1 do begin var num:=ay+(i-1)*hy; var y:=yRight-Trunc(my*(num-ay)); Line(x0-3,y,x0+3,y); Str(num,s); if abs(num)>1E-15 then TextOut(x0+7,y-TextHeight(s) div 2,s) end; TextOut(x0-10,y0+10,'0'); // собственно график var xi:=ax; while xi<=bx do begin var yi:=f(xi); var x:=x0+Round(xi*mx); var y:=y0-Round(yi*my); if (y>=yLeft) and (y<=yRight) then SetPixel(x,y,clRed); xi+=1e-3 end end.
Вот, нашел на одном из сайтов: #include <iostream>
#include <conio.h>
#include <cstdlib>
#include <ctime>
using namespace std;
int main (){
srand(time(0));
int n, one, two, co=0, ol, k=0, var, sum1=0, sum2=0;
bool kto=true;
cout << "Privet davaii sigraem v kosti.\nPobedit tot u kogo suma 3 broskov budet bolshe\n\n";
while (k<3)
{
cout << "\n1 - Brositj kubik\n2 - Vijti\nViberi variant: ";
cin >> var;
if (var==1)
{
for (int j=0; j<=1; j++)
{
one=1+(rand()%6);
two=1+(rand()%6);
cout << "\n";
if (kto) cout << "\tTvoi kubiki\n";
if (!kto) cout << "\tMoi kubiki\n";
cout << "\n";
for (int i=1; i<=5; i++)
{
if (i==1) n=1;
else if (i==2 && one==1) n=2;
else if (i==2 && one==3 || i==2 && one==2) n=3;
else if (i==2 && one==4 || i==2 && one==5 || i==2 && one==6) n=4;
else if (i==3 && one==3 || i==3 && one==1 || i==3 && one==5) n=5;
else if (i==3 && one==2 || i==3 && one==4) n=2;
else if (i==3 && one==6) n=4;
else if (i==4 && one==1) n=2;
else if (i==4 && one==3 || i==4 && one==2) n=6;
else if (i==4 && one==4 || i==4 && one==5 || i==4 && one==6) n=4;
else if (i==5) n=7;
switch (n){
case 1:
cout << (char)201 << (char)205 << (char)205 << (char)205 << (char)205 << (char)205 << (char)205 << (char)205 << (char)187;
break;
case 2:
cout << (char)186 << " " << (char)186;
break;
case 3:
cout << (char)186 << " o " << (char)186;
break;
case 4:
cout << (char)186 << " o o " << (char)186;
break;
case 5:
cout << (char)186 << " o " << (char)186;
break;
case 6:
cout << (char)186 << " o " << (char)186;
break;
case 7:
cout << (char)200 << (char)205 << (char)205 << (char)205 << (char)205 << (char)205 << (char)205 << (char)205 << (char)188;
break;
}
if (co%2==0) {
cout << "\t";
i--;
ol=one;
one=two;}
else {
cout << endl;
one=ol; }
co++;
}
if (kto){
sum1=sum1+one+two;
kto=false;
continue;
}
if(!kto){
sum2=sum2+one+two;
kto=true;
}
}
}
else if (var==2) return 0;
else {
cout << "\n!!! Viberi variant 1 ili 2 !!!\n";
continue;}
k++;
}
cout << "\nTvoj rezultat = " << sum1 << endl << "Moj rezultat = " << sum2 << endl;
if (sum1>sum2)
cout << "\n\tTi pobedil ;)";
else cout << "\n\tTi proigral :(";
getch ();
}
// PascalABC.NET 3.1, сборка 1204 от 24.03.2016
uses graphABC;
const
w=1000;
h=600;
function f(x:real):=0.5*x*cos(2*x);
begin
SetWindowSize(w,h);
// поле для графика в окне
var xLeft:=50;
var yLeft:=50;
var xRight:=w-xLeft;
var yRight:=h-yLeft;
// интервалы по осям
var ax:=-12.0;
var bx:=12.0;
var hx:=1.0;
var ay:=-6.5; // минимум f(x) с запасом
var by:=6.5;
var hy:=0.5;
// масштабы по осям
var mx:=(xRight-xLeft)/(bx-ax);
var my:=(yRight-yLeft)/(by-ay);
// точка начала координат графика
var x0:=xLeft+Trunc(abs(ax)*mx);
var y0:=yRight-Trunc(abs(ay)*my);
// рисование координатных осей
Line(xLeft,y0,xRight+10,y0);
Line(x0,yLeft-10,x0,yRight);
SetFontSize(12); SetFontColor(clBlue);
TextOut(xRight+15,y0-10,'X');
TextOut(x0-4,yLeft-30,'Y');
SetFontSize(8); SetFontColor(clGreen);
// рисование засечек
var s:string;
for var i:=1 to Round((bx-ax)/hx)+1 do begin
var num:=ax+(i-1)*hx;
var x:=xLeft+Trunc(mx*(num-ax));
Line(x,y0-3,x,y0+3);
Str(num,s);
if abs(num)>1E-15 then TextOut(x-TextWidth(s) div 2,y0+10,s)
end;
for var i:=1 to Round((by-ay)/hy)+1 do begin
var num:=ay+(i-1)*hy;
var y:=yRight-Trunc(my*(num-ay));
Line(x0-3,y,x0+3,y);
Str(num,s);
if abs(num)>1E-15 then TextOut(x0+7,y-TextHeight(s) div 2,s)
end;
TextOut(x0-10,y0+10,'0');
// собственно график
var xi:=ax;
while xi<=bx do begin
var yi:=f(xi);
var x:=x0+Round(xi*mx);
var y:=y0-Round(yi*my);
if (y>=yLeft) and (y<=yRight) then SetPixel(x,y,clRed);
xi+=1e-3
end
end.
*******************************************
// PascalABC.NET 3.1, сборка 1204 от 24.03.2016
uses graphABC;
const
w=1000;
h=600;
function f(x:real):=8*sin(x)*sin(2*x);
begin
SetWindowSize(w,h);
// поле для графика в окне
var xLeft:=50;
var yLeft:=50;
var xRight:=w-xLeft;
var yRight:=h-yLeft;
// интервалы по осям
var ax:=-15.0;
var bx:=15.0;
var hx:=1.0;
var ay:=-6.5; // минимум f(x) с запасом
var by:=6.5;
var hy:=0.5;
// масштабы по осям
var mx:=(xRight-xLeft)/(bx-ax);
var my:=(yRight-yLeft)/(by-ay);
// точка начала координат графика
var x0:=xLeft+Trunc(abs(ax)*mx);
var y0:=yRight-Trunc(abs(ay)*my);
// рисование координатных осей
Line(xLeft,y0,xRight+10,y0);
Line(x0,yLeft-10,x0,yRight);
SetFontSize(12); SetFontColor(clBlue);
TextOut(xRight+15,y0-10,'X');
TextOut(x0-4,yLeft-30,'Y');
SetFontSize(8); SetFontColor(clGreen);
// рисование засечек
var s:string;
for var i:=1 to Round((bx-ax)/hx)+1 do begin
var num:=ax+(i-1)*hx;
var x:=xLeft+Trunc(mx*(num-ax));
Line(x,y0-3,x,y0+3);
Str(num,s);
if abs(num)>1E-15 then TextOut(x-TextWidth(s) div 2,y0+10,s)
end;
for var i:=1 to Round((by-ay)/hy)+1 do begin
var num:=ay+(i-1)*hy;
var y:=yRight-Trunc(my*(num-ay));
Line(x0-3,y,x0+3,y);
Str(num,s);
if abs(num)>1E-15 then TextOut(x0+7,y-TextHeight(s) div 2,s)
end;
TextOut(x0-10,y0+10,'0');
// собственно график
var xi:=ax;
while xi<=bx do begin
var yi:=f(xi);
var x:=x0+Round(xi*mx);
var y:=y0-Round(yi*my);
if (y>=yLeft) and (y<=yRight) then SetPixel(x,y,clRed);
xi+=1e-3
end
end.