Latest Post
Optimization: Interval Halving Method
- Get link
- X
- Other Apps
1. Interval Halving Method Algorithm in C
#include<stdio.h>
double myFun(double x);
int main()
{
double a, b, y, x, xm, x1, x2, fx1, fx2, fxm, L, t=0.01;
printf("Enter a:");
scanf("%lf",&a); //Upper Bound
printf("Enter b:");
scanf("%lf",&b); //Lower Bound
xm = (a + b)/2;
jump:
L = b-a;
x1 = a + (L/4);
x2 = b - (L/4);
printf("\n\na = %.2lf",a);
printf("\nb = %.2lf",b);
printf("\nx1 = %.2lf",x1);
printf("\nx2 = %.2lf",x2);
printf("\nxm = %.2lf",xm);
printf("\nL = %.2lf",L);
fx1 = myFun(x1);
printf("\nf(x1) = %.2lf",fx1);
fx2 = myFun(x2);
printf("\nf(x2) = %.2lf",fx2);
fxm = myFun(xm);
printf("\nf(xm) = %.2lf",fxm);
if(L > t)
{
if (fx1 < fxm)
{
a = a;
b = xm;
xm = x1;
goto jump;
}
else if (fx2 < fxm)
{
b = b;
a = xm;
xm = x2;
goto jump;
}
else if (fx1 > fxm && fx2 > fxm)
{
a = x1;
b = x2;
xm = (a+b)/2;
goto jump;
}
else
{
goto end;
}
}
else
{
goto end;
}
end:
return 0;
}
double myFun(double x) // function definition
{
double y;
y = ((x*x)+(54/x));
return y; // return statement
}
double myFun(double x);
int main()
{
double a, b, y, x, xm, x1, x2, fx1, fx2, fxm, L, t=0.01;
printf("Enter a:");
scanf("%lf",&a); //Upper Bound
printf("Enter b:");
scanf("%lf",&b); //Lower Bound
xm = (a + b)/2;
jump:
L = b-a;
x1 = a + (L/4);
x2 = b - (L/4);
printf("\n\na = %.2lf",a);
printf("\nb = %.2lf",b);
printf("\nx1 = %.2lf",x1);
printf("\nx2 = %.2lf",x2);
printf("\nxm = %.2lf",xm);
printf("\nL = %.2lf",L);
fx1 = myFun(x1);
printf("\nf(x1) = %.2lf",fx1);
fx2 = myFun(x2);
printf("\nf(x2) = %.2lf",fx2);
fxm = myFun(xm);
printf("\nf(xm) = %.2lf",fxm);
if(L > t)
{
if (fx1 < fxm)
{
a = a;
b = xm;
xm = x1;
goto jump;
}
else if (fx2 < fxm)
{
b = b;
a = xm;
xm = x2;
goto jump;
}
else if (fx1 > fxm && fx2 > fxm)
{
a = x1;
b = x2;
xm = (a+b)/2;
goto jump;
}
else
{
goto end;
}
}
else
{
goto end;
}
end:
return 0;
}
double myFun(double x) // function definition
{
double y;
y = ((x*x)+(54/x));
return y; // return statement
}
Output:
![]() |
| Interval Halving Method Optimization Algorithm |
- Get link
- X
- Other Apps
Comments
Popular posts from this blog
Samir Palnitkar Solution Manual Free Download PDF of Verilog HDL
This is a solution guide to the exercises of the book "The Solution Manual of the Verilog HDL: A Guide to Digital Design and Synthesis by Samir Palnitkar". Following are the Solutions to Solution Manual on Verilog HDL: A Guide to Digital Design and Synthesis by Samir Palnitkar , exercises of all chapters in the book. Chapter 1 ----------------- No Exercises ---------------- Chapter 2 : Hierarchical Modeling Concepts Chapter 3 : Basic Concepts Chapter 4 : Modules and Ports Chapter 5: Gate-level Modeling Chapter 6 : Dataflow Modeling Chapter 7 : Behavioral Modeling Chapter 8 : Tasks and Functions Download Solution Manual: Click on this link (Mega.nz Link) [Solution Manual to Verilog HDL: A Guide to Digital Design and Synthesis by Samir Palnitkar] Preview of Solution Manual: For Verilog Programs: Go to Index of Verilog Programming Tags: Verilog HDL solutio...
VLSI: 4-1 MUX Dataflow Modelling with Testbench
Verilog Code for 4-1 MUX Dataflow Modelling module m41(out, i0, i1, i2, i3, s0, s1); output out; input i0, i1, i2, i3, s0, s1; assign y0 = (i0 & (~s0) & (~s1)); assign y1 = (i1 & (~s0) & s1); assign y2 = (i2 & s0 & (~s1)); assign y3 = (i3 & s0 & s1); assign out = (y0 | y1 | y2 | y3); endmodule //Testbench code for 4-1 MUX Dataflow Modelling initial begin // Initialize Inputs a = 1;b = 0;c = 0;d = 0;s0 = 0;s1 = 0; ...
Verilog: 4 Bit Full Adder Behavioral Modelling with Testbench Code
Verilog Code for 4 Bit Full Adder Behavioral Modelling with Testbench Code module 4_bit_Add( input [3:0]a,b, input cin, output [3:0]sum, output cout ); reg [3:0]sum; reg cout; always @ (a or b or cin) assign {cout,sum}= a + b + cin; endmodule //Testbench code for 4 Bit Full Adder Behavioral Modelling initial begin // Initialize Inputs a = 0; b = 0; cin = 0; // Wait 100 ns for global reset to finish #100; // Add stimulus here #100 a=4; b=9; cin=1; #100 a=15; b=5; cin=1; #100 a=7; b=5; cin=0; #100 a=6; b=10; cin=1; end initial begin #100 $monitor (“ a = %b, b = %b, cin = %b, sum = %b, cout = %b”, a, b, cin, sum, cout); end endmodule Xillinx Output: 4 Bit Full Adder Behavioral Modelling Response Also See: List of Verilog Programs
VLSI: 8-3 Encoder Dataflow Modelling with Testbench
Verilog Code for 8-3 Encoder Dataflow Modelling module encoder_8_to_3( input d0, input d1, input d2, input d3, input d4, input d5, input d6, input d7, output q0, output q1, output q2 ); assign q0 = ( d1 | d3 | d5 | d7 ); assign q1 = ( d2 | d3 | d6 | d7 ); assign q2 = ( d4 | d6 | d5 | d7 ); endmodule //Testbench code for 8-3 Encoder Dataflow Modelling initial begin ...
VLSI: BCD to Excess 3 and Excess 3 to BCD Dataflow Modelling
module bcd_ex3_Dataflow( input a, input b, input c, input d, output w, output x, output y, output z ); assign w = (a | (b & c) | (b & d)); assign x = (((~b) & c) | ((~b) & d) | (b & (~c) & (~d))); assign y = ((c & d) | ((~c) & (~d))); assign z = ~d; endmodule Excess 3 to BCD: module ex3_to_bcd( input w, input x, input y, input z, output a, output b, output c, output d ); assign a = ((w & x) | (w & y & z)); assign b = (((~x) & (~y)) | ((~x) & (~z)) | (x & y & z)); assign c = (((~y) & z) | (y & (~z))); assign d = ~z; endmodule


Best Python Training in Pune with Placement
ReplyDeletePython Course in Pune
Python Certification Course in Pune
Python Programming Training in Pune
Advanced Python Classes in Pune