Задачи С++ (первый курс) — ответы. Циклические алгоритмы. Часть 4.


3-047.cpp
<———————————————————————->
//vychislit’ chastichnoe znachenie ryada 1-1/3+1/5-1/7+1/9
//i sravnit’ poluchennoe znachenie c pi/4

#include <stdio.h>
#include <conio.h>


void main()

{
clrscr();
printf(«pi/4=%.9f\n»,3.1415923565/4);
unsigned i,n;
float s=0;
printf(«Vvedite kolichestvo chlenov ryada {1-1/3+1/5-1/7+1/9+…}: «);
scanf(«%u»,&n);
for(i=1;i<n;i++)
if(i%2==0)
s-=1.0/i;
else
s+=1.0/i;
printf(«1-1/3+1/5-1/7+1/9+…=%.9f»,s);
getch();
}
3-050.cpp
<———————————————————————->
//vychislit’ summu tselyh polozhitel’nyh chisel, bol’shih M, men’shih N i kratnyh k

#include <stdio.h>
#include <conio.h>
void main()

{
clrscr();
unsigned m,n,k,i;
float s=0;
printf(«Vvedite natural’nye chisla M,N,K> «);
scanf(«%u%u%u»,&m,&n,&k);
for(i=m;i<n;i+=k)
s+=i;
printf(«Summa chisel, bol’shih %u, men’shih %u i kratnyh %u ravna %.0f»,m,n,k,s);
getch();
}
3-051.cpp
<———————————————————————->
//najti summu N pervyh nech`tnyh chisel

#include <stdio.h>
#include <conio.h>
void main()

{
clrscr();
unsigned n,i,t=1,s=0;
printf(«\tSumma nech`tnyh chisel\nSkol’ko chisel trebuetsya prosummirovat’? «);
scanf(«%u»,&n);
for (i=1;i<=n;i++)
{
s+=t;
t+=2;
}
printf(«Summa pervyh %u nech`tnyh chisel ravna %u»,n,s);
getch();
}

3-056.cpp
<———————————————————————->
//vyvesti na ekran imya i familiyu 10 raz

#include <stdio.h>
#include <conio.h>
void main()

{
clrscr();
char firstname[15],lastname[20];
printf(«Vvedite vashe imya: «);
scanf(«%s»,&firstname);
printf(«Vvedite vashu familiyu: «);
scanf(«%s»,&lastname);
for(int i=1;i<=10;i++)
printf(«\n%s %s»,firstname,lastname);
getch();
}

3-057.cpp
<———————————————————————->
//vyvesti na ekran kvadraty pervyh desyati tselyh polozhitel’nyh chisel

#include <stdio.h>
#include <conio.h>
void main()

{
clrscr();
for(int i=1;i<=10;i++)
printf(«%2i | %2i\n»,i,i*i);
getch();
}

3-058.cpp
<———————————————————————->
//vyvesti na ekran kvadraty pervyh pyati tselyh polozhitel’nyh nech`tnyh chisel

#include <stdio.h>
#include <conio.h>
void main()

{
clrscr();
int i=1;
while(i<10)
printf(«%2i | %2i\n»,i,i*i);
getch();
}
3-059.cpp
<———————————————————————->
//vychislit’ summu pervyh n tselyh polozhitel’nyh chisel

#include <stdio.h>
#include <conio.h>
void main()

{
clrscr();
unsigned n,s=0;
printf(«Vvedite kolichestvo chisel: «);
scanf(«%u»,&n);
for(unsigned i=1;i<=n;i++)
s+=i;
printf(«Summa pervyh %u tselyh chisel ravna %u»,n,s);
getch();
}
3-060.cpp
<———————————————————————->
//vychislit’ factorial chisla n

#include <stdio.h>
#include <conio.h>
void main()

{
clrscr();
unsigned n,i;
printf(«Vvedite tseloe polozhitel’noe chislo: «);
scanf(«%u»,&n);
float f=1;
if (n==0)
f=1;
else
for(i=1;i<=n;i++)
f*=i;
printf(«Factorial chisla %u raven %.0f»,n,f);
getch();
}
3-061.cpp
<———————————————————————->
//vyvesti pervye desyat’ stepenej dvojki (0..10)

#include <stdio.h>
#include <conio.h>
#include <math.h>
void main()

{
clrscr();
for(int a=0;a<11;a++)
printf(» %2i>%4.0lf \n»,a,pow(2,a));
getch();
}

3-062.cpp
<———————————————————————->
//y=-2,4*x2+5x-3, [-2;2], x+0.1

#include <stdio.h>
#include <conio.h>
void main()

{
clrscr();
printf(«| x | -2,4*x2+5x-3 |\n|——+—————|\n»);
float x=-2;
while (x<=2)
{
printf(«|%4.1f | %12.4f |\n»,x,-2.4*x*x+5*x-3);
x+=0.1;
}
getch();
}
3-064.cpp
<———————————————————————->
//sgenerirovat’ posledovatel’ost’ sluchajnyh chisel, vyvesti ih na ekran
//i vychislit’ ih srednee arifmeticheskoe

#include <stdio.h>
#include <conio.h>
#include <time.h>
#include <stdlib.h>
void main()

{
clrscr();
randomize();
int n;
float s=0;
for (int i=1;i<=10;i++)
{
n=random(10)+1;
printf(» %2i) == %i\n»,i,n);
s=(s+n)/2;
}
printf(«Srednee: %f»,s);
getch();
}
3-066.cpp
<———————————————————————->
//vyvesti na ekran tablitsu Pifagora

#include <stdio.h>
#include <conio.h>
void main()

{
clrscr();
printf(«\tTablitsa Pifagora\n\n | 1| 2| 3| 4| 5| 6| 7| 8| 9|\n-+—+—+—+—+—+—+—+—+—|»);
for (int i=1;i<=9;i++)
{
printf(«\n%i|»,i);
for (int j=1;j<=9;j++)
printf(«%2i|»,i*j);
}
getch();
}

3-067.cpp
<———————————————————————->
//vyvesti na ekran izobrazhenie shahmatnoj doski iz ‘*’ i ‘+’

#include <stdio.h>
#include <conio.h>
void main()

{
clrscr();
int n=2;
printf(» abcdefgh\n1″);
for (int i=1;i<=64;i++)
{
if (i%2==0)
printf(«*»);
else
printf(«+»);
if (i%8==0&&n<9)
{
printf(«\n%i»,n);
++n;
}
}
getch();
}
3-068.cpp
<———————————————————————->
//preobrazovat’ desyatichnoe chislo v dvoichnoe
//correctno rabotaet tol’ko dlya 0<n<1024

#include <stdio.h>
#include <conio.h>
void main()

{
clrscr();
unsigned n,m=0,p;
printf(«Vvedite natural’noe chislo: «);
scanf(«%u»,&n);
while(n)
{
p=n%2;
m=m*10+p;
n/=2;
}
while(m)
{
printf(«%u»,m%10);
m/=10;
}
getch();
}
3-071.cpp
<———————————————————————->
//vyvesti na eran rabotayuschie elektronnye chasy, rabotayschie do nazhatiya lyuboj klavishy

#include <conio.h>
#include <stdlib.h>
void main()

{
clrscr();
while(!kbhit())
system(«TIME /T»);
getch();
}

3-072.cpp
<———————————————————————->
//vychislit’ summu i sredneee arifmeticheskoe posledovatel’nosti polozhitel’nyh chisel

#include <conio.h>
#include <stdio.h>
void main()

{
clrscr();
unsigned a,k=0;
float s=0;
printf(«Vvedite posledovatel’nost’ polozhjitel’nyh chisel, okonchanie vvoda — nul’\n»);
while(a)
{
scanf(«%u»,&a);
s+=a;
k++;
}
printf(«Summa posledovatel’nosti %.0f, srednee arifmeticheskoe %.3f»,s,s/(k-1));
getch();
}
3-073.cpp
<———————————————————————->
//opredelit’ maksimal’noe iz vvodimyh s klaviatury chisel

#include <stdio.h>
#include <conio.h>
void main()

{
clrscr();
printf(«Vvedite posledovatel’nost’ tselyh polozhitel’nyh chisel\nKonets posledovatel’nosti — nol’\n»);
unsigned n,max;
do
{
scanf(«%u»,&n);
if(n>max)
max=n;
}
while(n);
printf(«%u — maksimal’noe iz vved`nnyh»,max);
getch();
}
3-074.cpp
<———————————————————————->
//preobrazovat’ desyatichnoe chislo v vos’merichnoe

#include <conio.h>
#include <stdio.h>
void main()

{
clrscr();
unsigned n,oct=0;
printf(«Vvedite desyatichnoe natural’noe chislo: «);
scanf(«%u»,&n);
while(n)
{
oct=oct*10+n%8;
n/=8;
}
printf(«V vos’merichnoj sisteme schiseniya: «);
while(oct)
{
printf(«%u»,oct%10);
oct/=10;
}
getch();
}
3-077.cpp
<———————————————————————->
//y=2*x2-5*x-8, [-4;4], h=+0.2

#include <stdio.h>
#include <conio.h>
void main()

{
clrscr();
float x=-4.2;
printf(» x | 2*x2-5*x-8 |\n——+————|»);
while (x<=4)
{
x+=0.2;
printf(«\n %4.1f | %-8.3f |»,x,2*x*x-5*x-8);
}
getch();
}

3-079.cpp
<———————————————————————->
//poschitat’ kolichestvo prostyh chisel iz desyati vved`nnyh s klaviatury natural’nyh chisel

#include <stdio.h>
#include <conio.h>
void main()

{
clrscr();
printf(«Vvedite desyat’ tselyh polozhitel’nyh chisel: \n»);
unsigned i,j,n,f,k=0;
for(i=1;i<11;i++)
{
printf(«%2u> «,i);
scanf(«%u»,&n);
f=0;
if(n%2==1)
for(j=3;j<n;j++)
if(n%j==0)
f++;
if(!f)
k++;
}
printf(«%u chisel yavlyayutsya prostymi»,k);
getch();
}
3-081.cpp
<———————————————————————->
//opredelit’ minimal’noe chislo vo vved`nnoj s klaviatury posledovatel’nosti polozhitel’nyh chisel

#include <stdio.h>
#include <conio.h>
void main()

{
clrscr();
printf(«Vvedite posledovatel’nost’ polozhitel’nyh chisel\n(nol’ — konets posledovatel’nosti):\n»);
unsigned n=1,min=4294967295;
while(n)
{
scanf(«%u»,n);
if (n!=0&&n<min)
min=n;
}
printf(«Minimal’noe iz vved`nnyh chisel — %u»,min);
getch();
}
3-083.cpp
<———————————————————————->
//proverit’ utverzhdenie: pri xE[0;40] vse y=x2+x+41 — prostye

#include <stdio.h>
#include <conio.h>
void main()

{
clrscr();
printf(» x | x2+x+41 | Prostoe |\n—-+———+———|\n»);
int x,y,i,f;
for(x=0;x<40;x++)
{
y=x*x+x+41;
printf(» %2i | %4i |»,x,y);
f=0;
for (i=2;i<y;i++)
if (y%i==0)
f++;
if (f)
printf(» net |\n»);
else
printf(» da |\n»);
}
getch();
}
3-084.cpp
<———————————————————————->
//sostavit’ generator chisel Pifagora a,b,c (a*a+b*b=c*c)
//a=m*m-n*n, b=2*m*n, c=m*m+n*n, gde (m,n)>1

#include <conio.h>
#include <stdio.h>
void main()

{
clrscr();
int m,n,k;
printf(«Vvedite natural’noe chislo k: «);
scanf(«%u»,&k);
printf(«\n| m | n | a | b | c |\n|—-+—-+———+———+———|\n»);
for(m=1;m<k;m++)
for(n=1;n<k;n++)
printf(«| %2i | %2i | %6i | %6i | %6i |\n»,m,n,m*m-n*n,2*m*n,m*m+n*n);
getch();
}