Главная Случайная страница


Категории:

ДомЗдоровьеЗоологияИнформатикаИскусствоИскусствоКомпьютерыКулинарияМаркетингМатематикаМедицинаМенеджментОбразованиеПедагогикаПитомцыПрограммированиеПроизводствоПромышленностьПсихологияРазноеРелигияСоциологияСпортСтатистикаТранспортФизикаФилософияФинансыХимияХоббиЭкологияЭкономикаЭлектроника






Где цифры жирные там менять по ситуации

#include<stdio.h>

#include<conio.h>

#include<malloc.h>

 

void GetStr(char*str,int size)

{

int i;

char c;

for(i=0;size>0&&(c=getche())!=13;size--,i++)

{

str[i]=c;

}

str[i]='\0';

}

void Revers(char *str,int l, int r)

{

 

while(l<r)

{

int temp=str[l];

str[l]=str[r];

str[r]=temp;

l++;

r--;

}

}

void GetPositions(char* str,int *l1,int *l2,int *r1,int *r2)

{

int counter1=0,counter2=0;

while(str[*l1]!='\0'&&counter1<1)

{

if(*r1>0)

*l1=(*r1)+1;

while(str[*l1]==32)

(*l1)++;

if(str[*l1]!='\0')

counter1++;

*r1=*l1;

while(str[(*r1)+1]!=32 && str[(*r1)+1]!='\0')

(*r1)++;

}

while(str[*l2]!='\0'&&counter2<2)

{

*l2=(*r2)+1;

while(str[*l2]==32)

(*l2)++;

if(str[*l2]!='\0')

counter2++;

*r2=*l2;

while(str[(*r2)+1]!=32 && str[(*r2)+1]!='\0')

(*r2)++;

}

}

void Change(char*str,int count1,int count2)

{

int i=0,j=0,k=0,l=0;

GetPositions( str,&i,&k,&j,&l);

Revers(str,i,l);

i=0;j=0;k=0;l=0;

GetPositions( str,&i,&k,&j,&l);

Revers(str,i,j);

Revers(str,k,l);

if(count2-count1>=2)

Revers(str,j+1,k-1);

 

}

 

int main()

{

char *string;

int size;

printf("Enter how many symbols do you want: ");

scanf("%d",&size);

string=(char*)malloc(size*sizeof(char));

printf("Enter string: ");

GetStr(string,size);

Change(string,1,2);

printf("\n%s",string);

free(string);

getch();

return 0;

}

 

 

Из 10-ой СС в любую

#include<stdio.h>

#include<conio.h>

int ss;

char ms[200];

char znak='+';

int main()

{

int t,i,num1,k1=10,k2=11;

double num;

printf("Enter number: ");

scanf("%lf",&num);

printf("Enter accarsity: ");

scanf("%d",&t);

printf("Enter cc: ");

scanf("%d",&ss);

num<0?znak='-',num*=-1:num;

num1=num;

num-=num1;

while(num1>=ss)

{

i=num1%ss;

num1/=ss;

ms[k1--]=i>9?i-10+'A':i+'0';

}

ms[k1--]=num1>9?num1-10+'A':num1+'0';

ms[k1]=znak;

ms[k2++]='.';

while(num!=0&&k2-11<=t)

{

num*=ss;

i=num*ss;

num-=i;

ms[k2++]=i>9?i-10+'A':i+'0';

}

for(i=k1;i<k2;i++)

printf("%c",ms[i]);

getch();

return 0;

}

 

 

Минимальное в массиве строк

#include<stdio.h>

#include<conio.h>

#include<malloc.h>

#include<windows.h>

void GetStr(char*str,int size)

{

int i;

char c;

for(i=0;size>0&&(c=getche())!=13;size--,i++)

{

str[i]=c;

}

str[i]='\0';

 

}

int GetWord(char*str,int *i)

{

int len=0;

while(str[*i]==32)

(*i)++;

if(str[*i]=='\0')

return 0;

 

while(str[*i]!=32 && str[*i]!='\0')

{

len++;

(*i)++;

}

 

return len;

}

int main()

{

char** arr;

int number, size,i,lenght=0,location=0,minlenght,l_minword,index;

printf("Enter,how many strings do you want: ");

scanf("%d",&number);

arr=(char**)malloc(number*sizeof(char*));

printf("Enter,how many symbols in strings do you want: ");

scanf("%d",&size);

for(i=0;i<number;i++)

arr[i]=(char*)malloc(size+1*sizeof(char));

system("cls");

for(i=0;i<number;i++)

{

printf("Enter string number %d: ",(i+1));

GetStr(arr[i],size);

system("cls");

}

lenght=GetWord(arr[0],&location);

minlenght=lenght;

l_minword=location;

 

for(i=0,index=0;i<number;i++)

{

while(arr[i][location]!='\0')

{

lenght=GetWord(arr[i],&location);

if(lenght<minlenght)

{

minlenght=lenght;

l_minword=location;

index=i;

}

}

location=0;

}

 

for(i=l_minword-minlenght;i<=l_minword;i++)

printf("%c",arr[index][i]);

for(i=0;i<number;i++)

free(arr[i]);

free(arr);

getch();

return 0;

}

 

 

НОД рекурсией

#include<stdio.h>

#include<conio.h>

int Nod(int n,int m)

{

if(n<m)

{

int temp=n;

n=m;

m=temp;

}

if(n%m==0)

return m;

else

return Nod(n%m,m);

}

int main()

{

int number1, number2;

int nod;

scanf("%d%d",&number1,&number2);

nod=Nod(number1,number2);

printf("\n%d",nod);

getch();

return 0;

}

 

 

Реверс каждого слова в строке

#include<stdio.h>

#include<conio.h>

#include<malloc.h>

void GetStr(char*str,int size)

{

int i;

char c;

for(i=0;size>0&&(c=getche())!=13;size--,i++)

{

str[i]=c;

}

str[i]='\0';

}

int GetWord(char*str,int *i)

{

int len=0;

while(str[*i]==32)

(*i)++;

if(str[*i]=='\0')

return 0;

 

while(str[*i]!=32 && str[*i]!='\0')

{

len++;

(*i)++;

}

 

return len;

}

void Revers(char *str,int l, int r)

{

r--;

while(l<r)

{

int temp=str[l];

str[l]=str[r];

str[r]=temp;

l++;

r--;

}

}

 

int main()

{

char *string;

int size,location=0,left,lenght;

printf("Enter how many symbols do you want: ");

scanf("%d",&size);

string=(char*)malloc(size*sizeof(char));

printf("Enter string: ");

GetStr(string,size);

while(string[location]!='\0')

{

lenght=GetWord(string,&location);

left=location-lenght;

 

Revers(string,left,location);

 

}

printf("\n%s",string);

free(string);

getch();

return 0;

}

 

 

Реверс строки

#include<stdio.h>

#include<conio.h>

#include<malloc.h>

void GetStr(char*str,int size)

{

int i;

char c;

for(i=0;i<size&&(c=getche())!=13;i++)

{

str[i]=c;

}

str[i]='\0';

 

}

void Revers(char *str)

{

int i=0, j;

for(j=0;str[j+1]!='\0';j++);

while(i<j)

{

int temp=str[i];

str[i]=str[j];

str[j]=temp;

i++;

j--;

 

}

}

int main()

{

char *string;

int size,lenght;

printf("Enter,how many symbols do you want: ");

scanf("%d",&size);

string=(char*)malloc(size+1*sizeof(char));

printf("Enter string: ");

GetStr(string,size);

Revers(string);

printf("\n%s",string);

free(string);

getch();

return 0;

}

 

Рекурсивный реверс строки

#include<stdio.h>

#include<conio.h>

#include<malloc.h>

int GetStr(char*str,int size)

{

int i;

char c;

for(i=0;i<size&&(c=getche())!=13;i++)

str[i]=c;

str[i]='\0';

return i-1;

}

void Revers(char *str,int l, int r)

{

 

if(l<r)

{

int temp=str[l];

str[l]=str[r];

str[r]=temp;

l++;

r--;

Revers(str, l, r);

}

}

int main()

{

char *string;

int size,lenght;

printf("Enter,how many symbols do you want: ");

scanf("%d",&size);

string=(char*)malloc(size+1*sizeof(char));

printf("Enter string: ");

lenght=GetStr(string,size);

Revers(string,0,lenght);

printf("\n%s",string);

free(string);

getch();

return 0;

}

 

 

Седловая точка

#include<stdio.h>

#include<conio.h>

#include<malloc.h>

int main()

{

int **A;

int m,n,i,j,point,t,i1,i2,j1,alarm=0;

printf("Enter,how many strings do you want: ");

scanf("%d",&m);

printf("Enter,how many colomns do you want: ");

scanf("%d",&n);

A=(int**)malloc(m*sizeof(int*));

for(i=0;i<m;i++)

A[i]=(int*)malloc(n*sizeof(int*));

for(i=0;i<m;i++)

for(j=0;j<n;j++)

{

printf("Element[%d][%d]= ",i,j);

scanf("%d", &A[i][j]);

}

 

for(i=0;i<m;i++)

{

t=*(*(A+i)+0);

i1=i;

j1=0;

for(j=0;j<n;j++)

if(*(*(A+i)+j)<t)

{

t=*(*(A+i)+j);

i1=i;

j1=j;

}

point=0;

for(i2=0;i2<m;i2++)

if(t<=*(*(A+i2)+j1)&&i1!=i2)

point=1;

if(!point)

{

alarm=1;

printf("\n Naidena sedlovaia tochka %d s koordinatami: %d,%d",t,i1+1,j1+1);

 

}

}

if(!alarm)

printf("Net sedlovix tochek");

for(i=0;i<m;i++)

free(A[i]);

free(A);

getch();

return 0;

}

 

 

Синус

#include <stdio.h>

#include <conio.h>

#include <math.h>

#define pi 3.1415926535897932384626433832

long double factorial( long int number)

{

if(number==0|| number==1)

return 1;

return number* factorial(number-1);

}

double p(double base, double stage)

{

if (stage==0)

return 1;

if (stage==1)

return base;

return base * p(base, stage - 1);

}

double mod ( double numb)

{

if (numb>=0)

return numb;

return numb*(-1);

}

int main()

{

long double angl, calculatedsin=0, Maclaurinseries=1, sinlib;

int k=0, n, acc,iteration;

printf(" Please, enter angle ");

scanf("%lf", &angl);

printf(" Please, enter accuracy: ");

scanf("%d", &acc);

printf("Enter,how many iterations do you want: ");

scanf("%d",&iteration);

sinlib=sin(angl);

for(;angl<- pi|| angl>pi ;)

{

k=angl/pi;

angl=angl-(2*k*pi);

}

 

for(n=0;n<iteration && mod(Maclaurinseries)>(1/(p(10,acc)));n++)

{

Maclaurinseries=p((-1),n)*(p(angl,(2*n+1))/factorial(2*n+1));

calculatedsin=calculatedsin+Maclaurinseries; // Ряд Маклорена для синуса

}

acc++;

printf("Sin from your entered angle = ");

printf("%.*lf \n", acc,calculatedsin);

printf("For comparison, library sin = ");

printf("%.16lf \n", sinlib);

getch();

return 0;

}

 

 

Последнее изменение этой страницы: 2017-09-12

lectmania.ru. Все права принадлежат авторам данных материалов. В случае нарушения авторского права напишите нам сюда...