'언어'에 해당되는 글 117건

  1. 2015.12.22 역 거듭제곱
  2. 2015.12.22 Lagrange
  3. 2015.12.21 Gauss Seidel
  4. 2015.12.21 Jacobi
  5. 2015.12.21 GaussN
  6. 2015.12.21 Least(최소 제곱법)
  7. 2015.12.21 Thomas(Tridia)
  8. 2015.12.21 LUCrout (LU분해,해 구하기, 역행렬 구하기)
  9. 2015.12.21 Newton Raphson Method
  10. 2015.12.19 출력 버퍼를 비우는 fflush 함수

역 거듭제곱

언어/Coding 2015. 12. 22. 02:47

/*LU분해 후 역행렬을 구하고 난뒤 최대 고유값을 구한다*/

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

double A[10][10],x0[10],sum[10],xR[10],B[10][10],c[10][10],L[10][10],U[10][10],b2[10],E[10],x[10],B[10][10];

int n;

void LUCrout();

void Reverse();


void LUCrout() {

        int i,j,k;

        double sum;

        for(i=1;i<=n;i++)

                L[i][1]=A[i][1];

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

                U[1][j]=A[1][j]/L[1][1];

        for(j=2;j<=n;j++) {

                for(i=j;i<=n;i++) {

                        sum=0;

                        for(k=1;k<=j-1;k++) sum=sum+L[i][k]*U[k][j];

                        L[i][j]=A[i][j]-sum;

                }

                U[j][j]=1;

                for(i=j+1;i<=n;i++) {

                        sum=0.0;

                        for(k=1;k<=j-1;k++) sum=sum+L[j][k]*U[k][i];

                        U[j][i]=(A[j][i]-sum)/L[j][j];

                }

        }

}//end of LuCrout


void Reverse() {

        int i,j,a;

        double sum;

        printf("역행렬을 구합니다\n");

for(a=1;a<=n;a++){

        printf("역행렬을 구합니다. 단위 행렬을 입력해주세요\n");

        for(i=1;i<=n;i++){

                printf("E[%d]:",i);

                scanf("%lf", &E[i]);

        }


        for(i=1;i<=n;i++){

                sum=0;

                for(j=1;j<=i-1;j++)

                        sum=sum+L[i][j]*b2[j];

                b2[i]=(E[i]-sum)/L[i][i];

        }

        printf("\n");


        for(i=n;i>=1;i--){

                sum=0;

                for(j=i+1;j<=n;j++)

                        sum=sum+U[i][j]*x[j];

                x[i]=b2[i]-sum;

        }

        for(i=1;i<=n;i++)

                printf("역행렬 x[%d]:%lf\n",i,x[i]);

        for(i=1;i<=n;i++)

                B[i][a]=x[i];

}

}// end of Reverse


int main(){


        int i,j,k,repeat,v;

        float ramda,temp,temp2,x1,deter;

        printf("몇 행렬: ");

        scanf("%d",&n);

printf("반복 횟수 입력:");

        scanf("%d",&repeat);

        printf("기본 행렬을 입력해 주세요:\n");

        for(i=1;i<=n;i++) //행 입력

        {

                for(j=1;j<=n;j++) //열 입력

                {

                        printf("A[%d][%d]:",i,j);

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

                }

        }

        LUCrout();

        Reverse();

        printf("역행렬(B): \n");

        for(i=1;i<=n;i++)

        {

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

                {

                        printf("%f\t",B[i][j]);

                }

                printf("\n");

        }

        for(i=1;i<=n;i++)

        {

                printf("초기 x(0)을 입력해 주세요: ");

                scanf("%lf",&x0[i]);

        }

        v=1;

        for(i=1;i<=repeat;i++) //수렴기준 대신에 반복 횟수로 카운트

        {

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

                {

                        sum[j]=0;

                        for(k=1;k<=n;k++)

                        {


sum[j]=sum[j]+B[j][k]*x0[k]; // Y = sum, A역행렬=B

                        }

                        //printf("Y값 계산:%f\n",sum[j]);

                }

                temp = 0;

                temp2 = 0;

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

                {

                        temp=x0[j]*sum[j]+temp; // temp는 lamda구하기 위한 임시 변수

                        //printf("x0[%d]=%f, temp:%f\t",j,x0[j], temp);

                        temp2=x0[j]*x0[j]+temp2;

                        //printf("temp2:%f\n",temp2);

                        ramda=temp/temp2;

                }

                //printf("Lamda:%f\n",ramda);

                x1=0;

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

                        x1=pow(sum[j],2)+x1;

                x1=sqrt(x1);

                //printf("x(1):%f\n",x1);

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

                        x0[j]=sum[j]/x1;

                printf("반복횟수:%d\t Lamda2:%f\t Lamda:%f\t x(1):%f\t x(2):%f\t x(3):%f\n",v,ramda,1/ramda,x0[1],x0[2],x0[3]);

                v++;

        }//end of repeat

}//end of main



'언어 > Coding' 카테고리의 다른 글

simpson 1/3 공식  (0) 2015.12.22
거듭제곱  (0) 2015.12.22
Lagrange  (0) 2015.12.22
Gauss Seidel  (0) 2015.12.21
Jacobi  (0) 2015.12.21
Posted by 知彼知己百戰不殆
,

Lagrange

언어/Coding 2015. 12. 22. 02:45

#include <stdio.h>

#include <math.h>

#define nd 5

double xd[nd]={0,1,2,4,5};

double yd[nd]={0,16,48,88,0};

double Lagrange(double x);


int main() {

        double x=3.0,y;

        y=Lagrange(x);

        printf("\n x=%f : f(x)=%f\n",x,y);

 }

double Lagrange(double x)

{

        double p, sum;

        int n,i,j;

        n=nd-1;

        sum=0;

        for(i=0;i<=n;i++) {

                p=1;

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

                        if(i!=j)

                        p=p*(x-xd[j])/(xd[i]-xd[j]);

                        printf("p값:%f\n",p);

                }

                sum=sum+p*yd[i];

        }

        return(sum);

}



'언어 > Coding' 카테고리의 다른 글

거듭제곱  (0) 2015.12.22
역 거듭제곱  (0) 2015.12.22
Gauss Seidel  (0) 2015.12.21
Jacobi  (0) 2015.12.21
GaussN  (0) 2015.12.21
Posted by 知彼知己百戰不殆
,

Gauss Seidel

언어/Coding 2015. 12. 21. 01:04

#include <stdio.h>

#include <math.h>

/* 대각 지배행렬이어야 성립하므로 방정식이 대각 지배 행렬에 안 맞을 경우 바꿔줘야 함  */

#define nd 20


double x[nd],a[nd][nd], b[nd];

int imax = 1000, n, iter;

double epsilon = 0.00001, resavg;

void Jacobi();


int main(){

        int i, j;


        printf(" \n 방정식 수 = ");

        scanf_s("%d", &n);

        printf(" 계수 행령a(i,j)을 입력하시오 \n");

        for (i = 1; i <= n; i = i + 1){

                printf("a(%d,j) j=1,,,n =", i);

                for (j = 1; j <= n; j = j + 1) scanf("%lf", &a[i][j]);

        }

        printf(" 상수행렬 b[i]를 입력하시오 \n");

        printf("b[i] i=1,,,n = ");

        for (i = 1; i <= n; i = i + 1)scanf("%lf", &b[i]);

        printf(" 가정값 x0[i] 입력하시오 \n");

        printf(" x0[i] i=1,,,n = ");

        for (i=1;i<=n;i=i+1)scanf("%lf", &x[i]);


        printf("\n Input data 출력 ");

        for (i = 1; i <= n; i = i + 1){

                printf("\n");

                for (j = 1; j <= n; j = j + 1){

                        printf("%10.5f", a[i][j]);

                }

                printf("%10.5f", b[i]);

        }

printf("\n");

        Jacobi();


        printf("\n 계산결과 출력 ");

        printf("\n iter = %d, 평균 residual = %f ", iter, resavg);

        for (i = 1; i <= n; i = i + 1){

                printf("\n x(%d)=%10.6f", i, x[i]);

        }

}


void Jacobi(){

        double ahat[nd][nd], bhat[nd], res[nd];

        double sum, ressum;

        int i, j;

        for (i = 1; i <= n; ++i){

                for (j = 1; j <= n; ++j){

                        ahat[i][j] = a[i][j] / a[i][i];

                }

                bhat[i] = b[i] / a[i][i];

                ahat[i][i] = 0.;

        }


        for (iter = 1; iter <= imax; ++iter){

                for (i = 1; i <= n; i++){

                        x[i] = bhat[i];

                        for (j = 1; j <= n; ++j){

                                x[i] = x[i] - ahat[i][j] * x[j];

                        }

                }

                ressum = 0;

for (i = 1; i <= n; ++i){

                        sum = x[i] - bhat[i];

                        for (j = 1; j <= n; ++j){

                                sum = sum + ahat[i][j] * x[j];

                        }

                        res[i] = fabs(sum);

                        ressum = ressum + res[i];

                }

                resavg = ressum / n;

                if (resavg < epsilon){

                        goto END;

                }

        }

                printf("\n 수렴하지 않는다 ");

        END:;

}



'언어 > Coding' 카테고리의 다른 글

역 거듭제곱  (0) 2015.12.22
Lagrange  (0) 2015.12.22
Jacobi  (0) 2015.12.21
GaussN  (0) 2015.12.21
Least(최소 제곱법)  (0) 2015.12.21
Posted by 知彼知己百戰不殆
,

Jacobi

언어/Coding 2015. 12. 21. 01:02

/*

        jacobi

        imax 반복횟수

        b[i] 상수행렬

        a[i][j] 계수행렬

        residual 잔차 잔여

*/


#include <stdio.h>

#include <math.h>

#define nd 20


double x[nd], x0[nd], a[nd][nd], b[nd];


int imax = 1000, n, iter;

double epsilon = 0.00001, resavg;


void jacobi();


int main() {

        int i, j;


        printf("방정식 수");

        scanf("%d", &n);

        printf("계수행렬 a(i,j) 을 입력하시오");

        for (i = 1; i <= n; i = i + 1)

        {

                for (j = 1; j <= n; j = j + 1) {

                        printf("a(%d,j) ", i);

                        scanf("%lf", &a[i][j]);

                }

        }

        printf("상수행렬 b[i]를 입력하시오 \n");

        printf("b[i] i=1,,,n=");

        for (i = 1; i <= n; i = i + 1) scanf("%lf", &b[i]);

        printf("가정값 x0[i] 입력하시오 \n");

 printf("x0[i] i=1,,,n=");

        for (i = 1; i <= n; i = i + 1) scanf("%lf", &x0[i]);


        printf("\n INPUT DATA 출력");

        for (i = 1; i <= n; i = i + 1)

        {

                printf("\n");

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

                {

                        printf("%10.5f", a[i][j]);

                }

                printf("%10.5f", b[i]);

        }

        printf("\n");

        jacobi();


        printf("\n 계산결과 출력");

        printf("\n iter = %d, 평균 residual = %f", iter, resavg);

        for (i = 1; i <= n; i++) {

                printf("\n x(%d)=%10.6f", i, x[i]);

        }

}


void jacobi() {

        double ahat[nd][nd], bhat[nd], res[nd];

        double sum, ressum;

        int i, j;

for (i = 1; i <= n; i++) {

                for (j = 1; j <= n; j++) {

                        ahat[i][j] = a[i][j] / a[i][i];

                }

                bhat[i] = b[i] / a[i][i];

                ahat[i][i] = 0;

        }


        for (iter = 1; iter <= imax; ++iter) {

                for (i = 1; i <= n; ++i) {

                        x[i] = bhat[i];

                        for (j = 1; j <= n; ++j) {

                                x[i] = x[i] - ahat[i][j] * x0[j];

                        }

                }

                ressum = 0;

                for (i = 1; i <= n; i++) {

                        sum = x[i] - bhat[i];

                        for (j = 1; j <= n; ++j) {

                                sum = sum + ahat[i][j] * x[j];

                        }

                        res[i] = fabs(sum);

                        ressum = ressum + res[i];

                }

                resavg = ressum / n;

                if (resavg < epsilon) {

                        goto END;

                }

                for (i = 1; i <= n; ++i) {

                        x0[i] = x[i];

                }


        }

        printf("\n 수렴하지 않는다");

END:;

}


'언어 > Coding' 카테고리의 다른 글

Lagrange  (0) 2015.12.22
Gauss Seidel  (0) 2015.12.21
GaussN  (0) 2015.12.21
Least(최소 제곱법)  (0) 2015.12.21
Thomas(Tridia)  (0) 2015.12.21
Posted by 知彼知己百戰不殆
,

GaussN

언어/Coding 2015. 12. 21. 01:00

#include <stdio.h>

#include <math.h>

#define nd 20

double x[nd], a[nd][nd], b[nd];

int n,i,j,k;

void eliminate();

void substitute();


void eliminate(){

        double factor;

        for(k=1;k<=n-1;k=k+1){

                for(i=k+1;i<=n;i=i+1){

                        factor=a[i][k]/a[k][k];

                                for(j=k+1;j<=n;j=j+1){

                                        a[i][j]=a[i][j]-factor*a[k][j];

                                }

                                b[i]=b[i]-factor*b[k];

                }

        }

}//end of eliminate


void substitute(){

        double sum;

        x[n]=b[n]/a[n][n];

                for(i=n-1;i>=1;i=i-1){

                        sum=0;

                        for(j=i+1;j<=n;j=j+1){

                                sum=sum+a[i][j]*x[j];

                        }

                        x[i]=(b[i]-sum)/a[i][i];

                }

}//end of substitute



int main() {

        printf("\n방정식 수 n=");

        scanf("%d", &n);

        printf("계수행렬 A(i,j)을 입력하시오\n");

        for(i=1;i<=n;i=i+1)

        {

                printf("A(%d,j) j=1,..n=",i);

                for(j=1;j<=n;j=j+1) scanf("%lf",&a[i][j]);

        }

        printf("상수행렬 b(i)를 입력하시오\n");

                printf("b(i) i=1,,,n=");

        for(i=1;i<=n;i=i+1) scanf("%lf",&b[i]);

        printf("\n Input data 출력");

        for(i=1;i<=n;i=i+1)

        {

                printf("\n");

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

                {       printf("%10.5f", a[i][j]);

                }

        printf("%10.5f",b[i]);

        }

        printf("\n");

        eliminate();

        substitute();

        printf("\n 계산결과 출력");

        for(i=1;i<=n;i=i+1)

        {

                printf("\n x(%d)=%10.6f",i,x[i]);

        }

        printf("\n");

}// end of main


'언어 > Coding' 카테고리의 다른 글

Gauss Seidel  (0) 2015.12.21
Jacobi  (0) 2015.12.21
Least(최소 제곱법)  (0) 2015.12.21
Thomas(Tridia)  (0) 2015.12.21
LUCrout (LU분해,해 구하기, 역행렬 구하기)  (0) 2015.12.21
Posted by 知彼知己百戰不殆
,

/* 여러개의 실험 데이터를 가장 잘 만족시키는 Y=a*x^b 구하는 코드 */


#include <stdio.h>

#include <stdlib.h>

#include <math.h>

#define e 2.718281

#define nd 20

double x[nd],y[nd],sumx,sumy,sumxy,sumx2;

int n;


void bang(double *a0, double *a1)

{

        int i;

        sumxy = 0;

        sumx = 0;

        sumx2 = 0;

        sumy = 0;

        for(i=1;i<=n;i++){

                sumxy=x[i]*y[i]+sumxy;

                sumx=x[i]+sumx;

                sumy=y[i]+sumy;

                sumx2=x[i]*x[i]+sumx2;

        }


        *a1=((n*sumxy)-(sumx*sumy))/((n*sumx2)-(sumx*sumx));

        *a0=(sumy/n)-(*a1*sumx)/n;

        printf("a1값:%lf\t a0값:%lf\n",*a1,*a0);


}//end of bang


int main()

{

        int i;

        double a0=0,a1=0,a=0,f=0,x1=0,x2=0;

        printf("데이터의 수:");         scanf("%d",&n);

        printf("X(i) 입력:");

        for(i=1;i<=n;i++)

                scanf("%lf", &x[i]);

        printf("Y(i) 입력:");

        for(i=1;i<=n;i++)

                scanf("%lf", &y[i]);

        for(i=1;i<=n;i++) {

                x[i]=log(x[i]+1);

                y[i]=log(y[i]);

        }

        for(i=1;i<=n;i++)

                printf("바뀐 x[%d]:%lf\t y[%d]:%lf\n",i,x[i],i,y[i]);

        bang(&a0,&a1);

        printf("구하려는 x 값을 입력:");        scanf("%lf",&x1);

        a=pow(e,a0);

        f=a/pow((x1+1),-a1);

        printf("x가 %lf일때 구하려는 y값:%lf\n",x1,f);

        printf("구하려는 x2값을 입력:");        scanf("%lf",&x2);

        f=a/pow((x2+1),-a1);

        printf("x가 %lf일때 구하려는 y값:%lf\n",x2,f);


}//end of main

'언어 > Coding' 카테고리의 다른 글

Jacobi  (0) 2015.12.21
GaussN  (0) 2015.12.21
Thomas(Tridia)  (0) 2015.12.21
LUCrout (LU분해,해 구하기, 역행렬 구하기)  (0) 2015.12.21
Newton Raphson Method  (0) 2015.12.21
Posted by 知彼知己百戰不殆
,

Thomas(Tridia)

언어/Coding 2015. 12. 21. 00:58

#include <stdio.h>

#include <stdlib.h>

#define nd 20

int n;

double l[nd],d[nd],r[nd],x[nd],b[nd];

void Tridia()

{


        int i;

        double factor;

        for(i=2;i<=n; ++i)

        {

                factor=l[i]/d[i-1];

                d[i]=d[i]-factor*r[i-1];

                b[i]=b[i]-factor*b[i-1];

        }

        x[n]=b[n]/d[n];

        for(i=n-1;i>=1;i=i-1)

        {

                x[i]=(b[i]-r[i]*x[i+1])/d[i];

        }

}

int main() {

        int i;

        printf("방정식 수n:");

        scanf("%d",&n);

        printf("계수행렬l(i) d(i) r(i)를 입력하시오\n");

        printf("l(i) i=1,...,n:");

        for(i=1;i<=n;i++) scanf("%lf",&l[i]);

        printf("d(i) i=1,...,n:");

        for(i=1;i<=n;i++) scanf("%lf",&d[i]);

        printf("r(i) i=1,...,n:");

        for(i=1;i<=n;i++) scanf("%lf",&r[i]);

        printf("상수행렬 b(i)를 입력하시오\n");

        printf("b(i) i=1,...,n:");

for(i=1;i<=n;i++) scanf("%lf",&b[i]);

        Tridia();

                printf("해는 다음과 같다. \n");

        for(i=1;i<=n;i++)

        {

                printf("x(%d)=%f",i,x[i]);

                printf("\n");

        }

}




'언어 > Coding' 카테고리의 다른 글

Jacobi  (0) 2015.12.21
GaussN  (0) 2015.12.21
Least(최소 제곱법)  (0) 2015.12.21
LUCrout (LU분해,해 구하기, 역행렬 구하기)  (0) 2015.12.21
Newton Raphson Method  (0) 2015.12.21
Posted by 知彼知己百戰不殆
,

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

#define nd 20

double A[nd][nd],b[nd],L[nd][nd],U[nd][nd],b2[nd],x[nd],E[nd],xR[nd];

int n;

void LuCrout();

void LuCrout_Sol();

void Reverse();


void LUCrout() {

        int i,j,k;

        double sum;

        for(i=1;i<=n;i++)

                L[i][1]=A[i][1];

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

                U[1][j]=A[1][j]/L[1][1];

        for(j=2;j<=n;j++) {

                for(i=j;i<=n;i++) {

                        sum=0;

                        for(k=1;k<=j-1;k++) sum=sum+L[i][k]*U[k][j];

                        L[i][j]=A[i][j]-sum;

                }

                U[j][j]=1;

                for(i=j+1;i<=n;i++) {

                        sum=0.0;

                        for(k=1;k<=j-1;k++) sum=sum+L[j][k]*U[k][i];

                        U[j][i]=(A[j][i]-sum)/L[j][j];

                }

        }

}//end of LuCrout


void LuCrout_Sol() {

        int i,j;

        double sum;

        printf("해를 입력해주세요:");

        for(i=1;i<=n;i++)

                scanf("%lf",&b[i]);

        for(i=1;i<=n;i++){

                sum=0;

                for(j=1;j<=i-1;j++)

                        sum=sum+L[i][j]*b2[j];

                b2[i]=(b[i]-sum)/L[i][i];

                printf("b^[%d]:%lf\n",i,b2[i]);

        }

        for(i=1;i<=n;i++)

                x[i]=b2[i];

        printf("\n");

        for(i=n-1;i>=1;i--){

                sum=0;

                for(j=i+1;j<=n;j++){

                        sum=sum+U[i][j]*x[j];

                        //printf("sum:%lf\n",sum);

                }

                x[i]=b2[i]-sum;

                printf("x[%d]:%lf\t sum:%lf\n",i,x[i],sum);

        }


}//end of LuCrout_Sol


void Reverse() {

        int i,j,a;

        double sum;

for(a=0;a<n;a++){

        printf("역행렬을 구합니다. 단위 행렬을 입력해주세요:");

        for(i=1;i<=n;i++){

                printf("E[%d]:",i);

                scanf("%lf", &E[i]);

        }


        for(i=1;i<=n;i++){

                sum=0;

                for(j=1;j<=i-1;j++)

                        sum=sum+L[i][j]*b2[j];

                b2[i]=(E[i]-sum)/L[i][i];

                printf("b^[%d]:%lf\n",i,b2[i]);

        }

        printf("\n");


        for(i=n;i>=1;i--){

                sum=0;

                for(j=i+1;j<=n;j++)

                        sum=sum+U[i][j]*x[j];

                x[i]=b2[i]-sum;

        }

        for(i=1;i<=n;i++)

                printf("x[%d]:%lf\n",i,x[i]);

}

}// end of Reverse


int main() {

        int i,j;

        double sum;

        printf("\n 방정식의 수 n= ");

        scanf("%d",&n);

        printf("게수행렬A(i,j)을 입려가시오\n");

        for(i=1;i<=n; i=i+1) {

                for(j=1;j<=n;j=j+1){

                        printf("A(%d,%d) j=1....n=",i,j);

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

                }

        }

        LUCrout();

        printf("\n [L] \n");

        for(i=1; i<=n; i++) {

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

                        printf("%f\t",L[i][j]);

                printf("\n");

        }

        printf("\n [U] \n");

        for(i=1;i<=n;i++) {

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

                        printf("%f\t",U[i][j]);

                printf("\n");

        }


        LuCrout_Sol();

        //Reverse();


}//end of main


'언어 > Coding' 카테고리의 다른 글

Jacobi  (0) 2015.12.21
GaussN  (0) 2015.12.21
Least(최소 제곱법)  (0) 2015.12.21
Thomas(Tridia)  (0) 2015.12.21
Newton Raphson Method  (0) 2015.12.21
Posted by 知彼知己百戰不殆
,

Newton Raphson Method

언어/Coding 2015. 12. 21. 00:54

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

#define e 2.7182818284590452354

#define th 0.0001


double f(double num1) {

        double num2;

        num2=pow(num1,3)-num1-1.344;

        return num2;

} //definition of f(x)


double f2(double num1) {

        double num2;

        num2=3*pow(num1,2)-1;

        return num2;

} //differential of f(x)


int main() {

        double x0,x1,n1,n2;

        int i;

        printf("Input first number:");

        scanf("%lf",&x0);

for(i=0;i<=999;i++){

                x1=x0-f(x0)/f2(x0);

                printf("\nx1 value is %lf\n",x1);

                n1=f(x0);

                printf("f(x0) value is %lf\n",n1);

                n2=f2(x0);

                x0=x1;

                //printf("f2(x0) value is %lf\n",n2);

                if (fabs(n1) <= th){

                        printf("\n%lf is root\n",x0);

                        printf("x:%lf \t f(x):%lf\n",x0,n1);

                        break;

                }

                else if ((fabs(n2) <= th) && (i=999)){

                        printf("no root value\n");

                        printf("x:%lf \t f(x):%lf\n",x0,n1);

                }

        }

        printf("첫 x일 때 나오는 f(x)는 근이 아님\n x1에 해당하는 f(x)는 f(x2)임

\n x2에 해당하는 f(x)는 f(x3)~~~ 이런 식으로 됨\n");

} //end of main

'언어 > Coding' 카테고리의 다른 글

Jacobi  (0) 2015.12.21
GaussN  (0) 2015.12.21
Least(최소 제곱법)  (0) 2015.12.21
Thomas(Tridia)  (0) 2015.12.21
LUCrout (LU분해,해 구하기, 역행렬 구하기)  (0) 2015.12.21
Posted by 知彼知己百戰不殆
,

출력 버퍼의 비워짐 : 출력버퍼에 저장된 데이터가 버퍼를 떠나서 목적지로 이동됨

출력 버퍼가 비워지는 시기는 버퍼가 꽉 찼을 때 비워지는 버퍼도 있고, 하나의 문장이 완전히 입력되었을 때마다 비워지는 버퍼도 있다.

fflush(stdout);  // 표준 출력버퍼를 비우라는 명령

1
2
3
#include <stdio.h>
 
int fflush(FILE * stream);
cs

 

입력 버퍼의 비워짐 : 데이터의 소멸을 의미

가끔 입력 버퍼에 남아있는 불필요한 데이터의 소멸을 위해서 입력버퍼를 비워야 하는 경우가 종종 있다.

Posted by 知彼知己百戰不殆
,