summaryrefslogtreecommitdiff
path: root/2885
diff options
context:
space:
mode:
Diffstat (limited to '2885')
-rwxr-xr-x2885/CH1/EX1.1/ex1_1.sce22
-rwxr-xr-x2885/CH1/EX1.2/ex1_2.sce22
-rwxr-xr-x2885/CH1/EX1.3/ex1_3.sce25
-rwxr-xr-x2885/CH1/EX1.4/ex1_4.sce38
-rwxr-xr-x2885/CH10/EX10.1/ex10_1.sce10
-rwxr-xr-x2885/CH10/EX10.10/ex10_10.sce12
-rwxr-xr-x2885/CH10/EX10.2/ex10_2.sce12
-rwxr-xr-x2885/CH10/EX10.3/ex10_3.sce10
-rwxr-xr-x2885/CH10/EX10.4/ex10_4.sce14
-rwxr-xr-x2885/CH10/EX10.5/ex10_5.sce15
-rwxr-xr-x2885/CH10/EX10.6/ex10_6.sce12
-rwxr-xr-x2885/CH10/EX10.7/ex10_7.sce12
-rwxr-xr-x2885/CH10/EX10.8/ex10_8.sce13
-rwxr-xr-x2885/CH10/EX10.9/ex10_9.sce12
-rwxr-xr-x2885/CH11/EX11.1/ex11_1.sce25
-rwxr-xr-x2885/CH11/EX11.2/ex11_2.sce26
-rwxr-xr-x2885/CH11/EX11.3/ex11_3.sce18
-rwxr-xr-x2885/CH12/EX12.1/ex12_1.sce10
-rwxr-xr-x2885/CH12/EX12.2/ex12_2.sce20
-rwxr-xr-x2885/CH12/EX12.3/ex12_3.sce10
-rwxr-xr-x2885/CH12/EX12.4/ex12_4.sce10
-rwxr-xr-x2885/CH12/EX12.5/ex12_5.sce20
-rwxr-xr-x2885/CH14/EX14.1/ex14_1.sce14
-rwxr-xr-x2885/CH14/EX14.2/ex14_2.sce12
-rwxr-xr-x2885/CH14/EX14.4/ex14_4.sce17
-rwxr-xr-x2885/CH14/EX14.5/ex14_5.sce10
-rwxr-xr-x2885/CH14/EX14.6/ex14_6.sce14
-rwxr-xr-x2885/CH15/EX15.1/ex15_1.sce13
-rwxr-xr-x2885/CH15/EX15.2/ex15_2.sce24
-rwxr-xr-x2885/CH15/EX15.3/ex15_3.sce11
-rwxr-xr-x2885/CH15/EX15.4/ex15_4.sce14
-rwxr-xr-x2885/CH15/EX15.5/ex15_5.sce35
-rwxr-xr-x2885/CH15/EX15.6/ex15_6.sce11
-rwxr-xr-x2885/CH15/EX15.7/ex15_7.sce16
-rwxr-xr-x2885/CH2/EX2.1/ex2_1.sce13
-rwxr-xr-x2885/CH2/EX2.2/ex2_2.sce16
-rwxr-xr-x2885/CH3/EX3.1/ex3_1.sce12
-rwxr-xr-x2885/CH3/EX3.10/ex3_10.sce18
-rwxr-xr-x2885/CH3/EX3.11/ex3_11.sce25
-rwxr-xr-x2885/CH3/EX3.12/ex3_12.sce32
-rwxr-xr-x2885/CH3/EX3.13/ex3_13.sce19
-rwxr-xr-x2885/CH3/EX3.14/ex3_14.sce13
-rwxr-xr-x2885/CH3/EX3.2/ex3_2.sce23
-rwxr-xr-x2885/CH3/EX3.3/ex3_3.sce16
-rwxr-xr-x2885/CH3/EX3.4/ex3_4.sce15
-rwxr-xr-x2885/CH3/EX3.5/ex3_5.sce24
-rwxr-xr-x2885/CH3/EX3.6/ex3_6.sce17
-rwxr-xr-x2885/CH3/EX3.7/ex3_7.sce18
-rwxr-xr-x2885/CH3/EX3.8/ex3_8.sce18
-rwxr-xr-x2885/CH3/EX3.9/ex3_9.sce13
-rwxr-xr-x2885/CH4/EX4.1/ex4_1.sce12
-rwxr-xr-x2885/CH4/EX4.10/ex4_10.sce10
-rwxr-xr-x2885/CH4/EX4.2/ex4_2.sce16
-rwxr-xr-x2885/CH4/EX4.3/ex4_3.sce12
-rwxr-xr-x2885/CH4/EX4.4/ex4_4.sce15
-rwxr-xr-x2885/CH4/EX4.5/ex4_5.sce8
-rwxr-xr-x2885/CH4/EX4.6/ex4_6.sce11
-rwxr-xr-x2885/CH4/EX4.7/ex4_7.sce16
-rwxr-xr-x2885/CH4/EX4.8/ex4_8.sce16
-rwxr-xr-x2885/CH4/EX4.9/ex4_9.sce28
-rwxr-xr-x2885/CH5/EX5.1/ex5_1.sce12
-rwxr-xr-x2885/CH5/EX5.2/ex5_2.sce20
-rwxr-xr-x2885/CH5/EX5.3/ex5_3.sce14
-rwxr-xr-x2885/CH5/EX5.4/ex5_4.sce18
-rwxr-xr-x2885/CH5/EX5.5/ex5_5.sce17
-rwxr-xr-x2885/CH5/EX5.6/ex5_6.sce15
-rwxr-xr-x2885/CH5/EX5.7/ex5_7.sce21
-rwxr-xr-x2885/CH5/EX5.8/ex5_8.sce9
-rwxr-xr-x2885/CH6/EX6.1/ex6_1.sce19
-rwxr-xr-x2885/CH6/EX6.10/ex6_10.sce26
-rwxr-xr-x2885/CH6/EX6.11/ex6_11.sce26
-rwxr-xr-x2885/CH6/EX6.12/ex6_12.sce40
-rwxr-xr-x2885/CH6/EX6.13/ex6_13.sce15
-rwxr-xr-x2885/CH6/EX6.14/ex6_14.sce15
-rwxr-xr-x2885/CH6/EX6.2/ex6_2.sce18
-rwxr-xr-x2885/CH6/EX6.3/ex6_3.sce27
-rwxr-xr-x2885/CH6/EX6.4/ex6_4.sce33
-rwxr-xr-x2885/CH6/EX6.5/ex6_5.sce17
-rwxr-xr-x2885/CH6/EX6.6/ex6_6.sce18
-rwxr-xr-x2885/CH6/EX6.7/ex6_7.sce15
-rwxr-xr-x2885/CH6/EX6.8/ex6_8.sce35
-rwxr-xr-x2885/CH6/EX6.9/ex6_9.sce16
-rwxr-xr-x2885/CH7/EX7.1/ex7_1.sce18
-rwxr-xr-x2885/CH7/EX7.10/ex7_10.sce14
-rwxr-xr-x2885/CH7/EX7.11/ex7_11.sce19
-rwxr-xr-x2885/CH7/EX7.12/ex7_12.sce15
-rwxr-xr-x2885/CH7/EX7.2/ex7_2.sce14
-rwxr-xr-x2885/CH7/EX7.3/ex7_3.sce18
-rwxr-xr-x2885/CH7/EX7.4/ex7_4.sce42
-rwxr-xr-x2885/CH7/EX7.5/ex7_5.sce33
-rwxr-xr-x2885/CH7/EX7.6/ex7_6.sce19
-rwxr-xr-x2885/CH7/EX7.7/ex7_7.sce32
-rwxr-xr-x2885/CH7/EX7.8/ex7_8.sce27
-rwxr-xr-x2885/CH7/EX7.9/ex7_9.sce21
-rwxr-xr-x2885/CH8/EX8.1/ex8_1.sce25
-rwxr-xr-x2885/CH8/EX8.2/ex8_2.sce22
-rwxr-xr-x2885/CH8/EX8.3/ex8_3.sce15
-rwxr-xr-x2885/CH8/EX8.4/ex8_4.sce46
-rwxr-xr-x2885/CH8/EX8.5/ex8_5.sce36
-rwxr-xr-x2885/CH8/EX8.6/ex8_6.sce13
-rwxr-xr-x2885/CH8/EX8.7/ex8_7.sce26
-rwxr-xr-x2885/CH9/EX9.1/ex9_1.sce10
-rwxr-xr-x2885/CH9/EX9.2/ex9_2.sce10
-rwxr-xr-x2885/CH9/EX9.3/ex9_3.sce29
-rwxr-xr-x2885/CH9/EX9.4/ex9_4.sce18
-rwxr-xr-x2885/CH9/EX9.5/ex9_5.sce13
-rwxr-xr-x2885/CH9/EX9.6/ex9_6.sce23
107 files changed, 1999 insertions, 0 deletions
diff --git a/2885/CH1/EX1.1/ex1_1.sce b/2885/CH1/EX1.1/ex1_1.sce
new file mode 100755
index 000000000..d2cc84a71
--- /dev/null
+++ b/2885/CH1/EX1.1/ex1_1.sce
@@ -0,0 +1,22 @@
+//Find the range of tolerance
+clear;
+clc;
+//soltion
+//given
+
+//color coding
+orange=3;
+gold=5;
+yellow=4;
+violet=7;
+//band pattern
+band1=yellow;
+band2=violet;
+band3=orange;
+band4=gold;
+//resistor color coding
+r=(band1*10+band2)*10^(band3);
+tol=r*(band4/100)//tolerance
+ulr=r+tol;//upper limit of resistance
+llr=r-tol;//lower limit of resistance
+printf('The Range of resistance is %.2f kΩ to %.2f kΩ',llr/1000,ulr/1000);
diff --git a/2885/CH1/EX1.2/ex1_2.sce b/2885/CH1/EX1.2/ex1_2.sce
new file mode 100755
index 000000000..5262e2892
--- /dev/null
+++ b/2885/CH1/EX1.2/ex1_2.sce
@@ -0,0 +1,22 @@
+//Find the range of tolerance
+clear;
+clc;
+//soltion
+//given
+
+//color coding
+blue=6;
+gold=-1;
+gray=8;
+silver=10;
+//band pattern
+band1=gray;
+band2=blue;
+band3=gold;
+band4=silver;
+//resistor color coding
+r=(band1*10+band2)*10^(band3);
+tol=r*(band4/100)//tolerance
+ulr=r+tol;//upper limit of resistance
+llr=r-tol;//lower limit of resistance
+printf('The Range of resistance is %.2f Ω to %.2f Ω',llr,ulr);
diff --git a/2885/CH1/EX1.3/ex1_3.sce b/2885/CH1/EX1.3/ex1_3.sce
new file mode 100755
index 000000000..87d8749d2
--- /dev/null
+++ b/2885/CH1/EX1.3/ex1_3.sce
@@ -0,0 +1,25 @@
+
+//Find the equivalent current source
+clear;
+clc;
+//soltion
+//given
+Vs=2;//Volts //dc voltage source
+Rs=1;//ohm //internal resistance
+Rl=1;//ohm //load resistance
+Ise=Vs/Rs;//ampere //equivalent current source
+
+// In accordance to figure 1.23a
+Il1=Ise*(Rs/(Rs+Rl));//using current divider concept
+Vl1=Il1*Rl;
+printf("\nIn accordance to figure 1.23a \n");
+printf("The Load current (current source) Il= %dA\n",Il1);
+printf("The Load voltage (current source) Vl= %dV\n\n",Vl1);
+
+// In accordance to figure 1.23b
+Vl2=Vs*(Rs/(Rs+Rl));//using voltage divider concept
+Il2=Vl2/Rl;
+printf("\nIn accordance to figure 1.23b \n");
+printf("The Load voltage (voltage source) Vl= %dV\n",Vl2);
+printf("The Load current (voltage source) Il= %dA\n\n",Il2);
+printf("Therefore they both provide same voltage and current to load");
diff --git a/2885/CH1/EX1.4/ex1_4.sce b/2885/CH1/EX1.4/ex1_4.sce
new file mode 100755
index 000000000..69cbc2dc6
--- /dev/null
+++ b/2885/CH1/EX1.4/ex1_4.sce
@@ -0,0 +1,38 @@
+
+//Find percentage variation in load current and load voltage
+clear;
+clc;
+//soltion
+//given
+Vs=10;//volt//Supply voltage
+Rs=100;//ohm//internal resistance
+
+// In accordance to figure 1.24a
+//For 1Ω - 10 Ω
+Rl11=1;//ohm//min extreme value of Rl
+Rl12=10;//ohm//max extreme value of Rl
+Il11=Vs/(Rs+Rl11);
+Il12=Vs/(Rs+Rl12);
+Pi1=(Il11-Il12)*100/Il11;//Percentage variation in current
+Vl11=Il11*Rl11;
+Vl12=Il12*Rl12;
+Pv1=(Vl12-Vl11)*100/Vl12;//Percentage variation in voltage
+printf("\nIn accordance to figure 1.24a \n");
+printf("Percentage variation in Current(1-10 Ω) %.2f percent\n",Pi1);
+printf("Percentage variation in Voltage(1-10 Ω) %.1f percent\n\n",Pv1);
+
+// In accordance to figure 1.24b
+//For 1kΩ - 10kΩ
+Rl21=1000;//ohm//min extreme value of Rl
+Rl22=10000;//ohm//max extreme value of Rl
+Il21=Vs/(Rs+Rl21);
+Il22=Vs/(Rs+Rl22);
+Pi2=(Il21-Il22)*100/Il21;//Percentage variation in current
+Vl21=Il21*Rl21;
+Vl22=Il22*Rl22;
+Pv2=(Vl22-Vl21)*100/Vl22;//Percentage variation in voltage
+printf("\nIn accordance to figure 1.24b \n");
+printf("Percentage variation in Current(1-10 Ω) %d percent \n",Pi2);
+printf("Percentage variation in Voltage(1-10 Ω) %.1f percent \n\n",Pv2);
+// In book the percentage variation in voltage(1kΩ-10kΩ) is 9 percent due to
+// the incorrect value of Il22 i.e. 0.000999 Amp correct value is 0.0009901 Amp
diff --git a/2885/CH10/EX10.1/ex10_1.sce b/2885/CH10/EX10.1/ex10_1.sce
new file mode 100755
index 000000000..1dcc21c06
--- /dev/null
+++ b/2885/CH10/EX10.1/ex10_1.sce
@@ -0,0 +1,10 @@
+//Determine the gain of feedback amplifier
+clear;
+clc;
+//soltion
+//given
+
+A=100; //internal gain
+B=0.1;//feedback factor
+Af=A/(1+A*B);
+printf("The gain of feedback amplifier %.2f",Af);
diff --git a/2885/CH10/EX10.10/ex10_10.sce b/2885/CH10/EX10.10/ex10_10.sce
new file mode 100755
index 000000000..bb4df2c18
--- /dev/null
+++ b/2885/CH10/EX10.10/ex10_10.sce
@@ -0,0 +1,12 @@
+//Calculate the percentage of negative feedback to input
+clear;
+clc;
+//soltion
+//given
+
+Adb=60;//dB //internal gain in dB
+A=10^(Adb/(20)); //taking antilog
+Ro=12*10^3;//ohm //output resistance
+Rof=600;//ohm
+B=(Ro/Rof-1)/A;
+printf("The percentage of negative feedback to input= %.1f percent",B*100);
diff --git a/2885/CH10/EX10.2/ex10_2.sce b/2885/CH10/EX10.2/ex10_2.sce
new file mode 100755
index 000000000..d77a90ea2
--- /dev/null
+++ b/2885/CH10/EX10.2/ex10_2.sce
@@ -0,0 +1,12 @@
+//Determine the gain of feedback amplifier in dB
+clear;
+clc;
+//soltion
+//given
+
+Ad=60;//dB //internal gain in dB
+A=10^(Ad/20); //internal gain
+B=1/20;//feedback factor
+Af=A/(1+A*B);
+Afd=20*log10(Af);
+printf("The gain of feedback amplifier %.2f dB",Afd);
diff --git a/2885/CH10/EX10.3/ex10_3.sce b/2885/CH10/EX10.3/ex10_3.sce
new file mode 100755
index 000000000..73c1b546e
--- /dev/null
+++ b/2885/CH10/EX10.3/ex10_3.sce
@@ -0,0 +1,10 @@
+//Calculate the percentage of output fed back to input
+clear;
+clc;
+//soltion
+//given
+
+A=600; //internal gain
+Af=50; //gain of feedback amplifier
+B=(A/Af-1)/A;
+printf("The percentage of output fed back to input= %.3f percent",B*100);
diff --git a/2885/CH10/EX10.4/ex10_4.sce b/2885/CH10/EX10.4/ex10_4.sce
new file mode 100755
index 000000000..93a3e630d
--- /dev/null
+++ b/2885/CH10/EX10.4/ex10_4.sce
@@ -0,0 +1,14 @@
+//Calculate the internal gain and percentage of output fed back to input
+clear;
+clc;
+//soltion
+//given
+
+Af=80; //gain of feedback amplifier
+Vi=0.05;//V //input with feedback
+Vi_=4*10^-3;//V //input without feedback
+Vo_=Af*Vi;
+A=Vo_/Vi_;
+printf("The internal gain is %.0f\n",A);
+B=(A/Af-1)/A;
+printf("The percentage of output fed back to input= %.2f percent",B*100);
diff --git a/2885/CH10/EX10.5/ex10_5.sce b/2885/CH10/EX10.5/ex10_5.sce
new file mode 100755
index 000000000..c9f1f26f7
--- /dev/null
+++ b/2885/CH10/EX10.5/ex10_5.sce
@@ -0,0 +1,15 @@
+//Calculate the gain with and without feedback and feedback factor
+clear;
+clc;
+//soltion
+//given
+
+Vo_=5;//V //output voltage
+Vi=0.2;//V //input with feedback
+Vi_=0.05;//V //input without feedback
+A=Vo_/Vi_;
+Af=Vo_/Vi;
+printf("The gain without feedback is %.0f\n",A);
+printf("The gain with feedback is %.0f\n",Af);
+B=(A/Af-1)/A;
+printf("The feedback factor= %.0f percent",B*100);
diff --git a/2885/CH10/EX10.6/ex10_6.sce b/2885/CH10/EX10.6/ex10_6.sce
new file mode 100755
index 000000000..a392f5d86
--- /dev/null
+++ b/2885/CH10/EX10.6/ex10_6.sce
@@ -0,0 +1,12 @@
+//Calculate the gain of feedback amplifier and feedback factor
+clear;
+clc;
+//soltion
+//given
+
+A=100; //internal gain
+N=20;//dB //negative feedback
+B=(10^(-N/(-20))-1)/A; //taking antilog
+Af=A/(1+A*B);
+printf("The feedback factor= %.0f percent\n",B*100);
+printf("The gain of the feedback amplifier is %.0f\n",Af);
diff --git a/2885/CH10/EX10.7/ex10_7.sce b/2885/CH10/EX10.7/ex10_7.sce
new file mode 100755
index 000000000..f7523f01b
--- /dev/null
+++ b/2885/CH10/EX10.7/ex10_7.sce
@@ -0,0 +1,12 @@
+//Calculate percentage change in the overall gain
+clear;
+clc;
+//soltion
+//given
+
+A=1000; //internal gain
+N=40;//dB //negative feedback
+D=10^((-N)/-20); //D=(1+AB) desensitivity
+dA_A=10;//percent //dA/A
+dAf_Af=dA_A/D; //dAf/Af
+printf("The percentage change in the overall gain= %.1f percent",dAf_Af);
diff --git a/2885/CH10/EX10.8/ex10_8.sce b/2885/CH10/EX10.8/ex10_8.sce
new file mode 100755
index 000000000..034785c94
--- /dev/null
+++ b/2885/CH10/EX10.8/ex10_8.sce
@@ -0,0 +1,13 @@
+//Calculate percentage change in the overall gain
+clear;
+clc;
+//soltion
+//given
+
+Adb=60;//dB //internal gain in dB
+B=0.005; //feedback factor
+A=10^(Adb/(20)); //taking antilog
+dA_A=-12;//percent //dA/A
+D=(1+A*B); //D=(1+AB) desensitivity
+dAf_Af=dA_A/D; //dAf/Af
+printf("The percentage change in the overall gain reduces by %.1f percent",-dAf_Af);
diff --git a/2885/CH10/EX10.9/ex10_9.sce b/2885/CH10/EX10.9/ex10_9.sce
new file mode 100755
index 000000000..28765e41d
--- /dev/null
+++ b/2885/CH10/EX10.9/ex10_9.sce
@@ -0,0 +1,12 @@
+//Determine the input resistance of feedback amplifier
+clear;
+clc;
+//soltion
+//given
+
+A=250; //internal gain
+B=0.1;//feedback factor
+Ri=1.1*10^3;//ohm //input resistance
+Rif=Ri*(1+A*B);
+printf("The input resistance of feedback amplifier %.1f kΩ",Rif/1000);
+//The ans in book is incorrect due to use of (2+A*B) instead of (1+A*B) the ans in book is 29.7 kΩ
diff --git a/2885/CH11/EX11.1/ex11_1.sce b/2885/CH11/EX11.1/ex11_1.sce
new file mode 100755
index 000000000..8965d3b84
--- /dev/null
+++ b/2885/CH11/EX11.1/ex11_1.sce
@@ -0,0 +1,25 @@
+//Calculate frequency and impedance and current and voltage across each element at resonance
+clear;
+clc;
+//soltion
+//given
+
+R=12;//ohm
+L=200*10^-6;//H
+C=300*10^-12;//F
+Vs=9;//V
+fo=1/(2*%pi*sqrt(L*C));
+Z=R; //impedance
+printf("The Resonant frequency= %.1f kHz\n",fo/1000);
+printf("The impedance Z= %.0f Ω\n",Z);
+
+Io=Vs/R;
+printf("The Source current= %.2f A\n",Io);
+
+Vl=Io*(2*%pi*fo*L);
+Vc=Io/(2*%pi*fo*C);
+Vr=Io*R;
+printf("The voltage across the inductor =%.1f V\n",Vl);
+printf("The voltage across the capacitor =%.1f V\n",Vc);
+printf("The voltage across the resistor =%.0f V\n",Vr);
+//There is a slight variation in voltage across capacitor due to the approaximation
diff --git a/2885/CH11/EX11.2/ex11_2.sce b/2885/CH11/EX11.2/ex11_2.sce
new file mode 100755
index 000000000..2c66d5bc9
--- /dev/null
+++ b/2885/CH11/EX11.2/ex11_2.sce
@@ -0,0 +1,26 @@
+//Calculate frequency and impedance and current at resonance and current in coil and capacitor
+clear;
+clc;
+//soltion
+//given
+
+R=10;//ohm
+L=100*10^-6;//H
+C=100*10^-12;//F
+Vs=10;//V
+fo=1/(2*%pi*sqrt(L*C));
+Zp=L/(C*R); //impedance
+printf("The Resonant frequency= %.3f MHz\n",fo/10^6);
+printf("The impedance Z= %.0f kΩ\n",Zp/1000);
+
+Io=Vs/Zp;
+printf("The Source current= %.0f uA\n",Io*10^6);
+
+Xl=(2*%pi*fo*L);
+Xc=1/(2*%pi*fo*C);
+Z1=sqrt(Xl^2+R^2);
+Z2=Xc;
+Ic=Vs/Z2;
+Il=Ic;
+printf("The current in the coil = %.0f mA\n",Il*1000);
+printf("The current in the capacitor = %.0f mA\n",Ic*1000);
diff --git a/2885/CH11/EX11.3/ex11_3.sce b/2885/CH11/EX11.3/ex11_3.sce
new file mode 100755
index 000000000..6f58c3202
--- /dev/null
+++ b/2885/CH11/EX11.3/ex11_3.sce
@@ -0,0 +1,18 @@
+//Calculate impedance and quality factor and bandwidth
+clear;
+clc;
+//soltion
+//given
+
+R=10;//ohm
+L=150*10^-6;//H
+C=100*10^-12;//F
+fo=1/(2*%pi*sqrt(L*C));
+Zp=L/(C*R); //impedance
+printf("The impedance Z= %.0f kΩ\n",Zp/1000);
+
+Xl=(2*%pi*fo*L);
+Q=Xl/R;
+BW=fo/Q;
+printf("The Quality factor of the circuit =%.1f \n",Q);
+printf("The Band width of the circuit =%.1f kHz\n",BW/1000);
diff --git a/2885/CH12/EX12.1/ex12_1.sce b/2885/CH12/EX12.1/ex12_1.sce
new file mode 100755
index 000000000..0c94278e5
--- /dev/null
+++ b/2885/CH12/EX12.1/ex12_1.sce
@@ -0,0 +1,10 @@
+//Calculate frequency of oscillations
+clear;
+clc;
+//soltion
+//given
+
+L=55*10^-6;//H
+C=300*10^-12;//F
+fo=1/(2*%pi*sqrt(L*C));
+printf("The frequency of oscillations= %.0f kHz\n",fo/1000);
diff --git a/2885/CH12/EX12.2/ex12_2.sce b/2885/CH12/EX12.2/ex12_2.sce
new file mode 100755
index 000000000..59e4c34cb
--- /dev/null
+++ b/2885/CH12/EX12.2/ex12_2.sce
@@ -0,0 +1,20 @@
+//Calculate frequency of oscillations and feedback factor and voltage gain
+clear;
+clc;
+//soltion
+
+function [z]=prll(r1,r2)//Function for the parallel combination of resistor
+ z=r1*r2/(r1+r2);
+endfunction
+
+//given
+C1=0.001*10^-6;//F
+C2=0.01*10^-6;//F
+L=15*10^-6;//H
+C=prll(C1,C2);
+fo=1/(2*%pi*sqrt(L*C));
+printf("The frequency of oscillations= %.2f MHz\n",fo/10^6);
+B=C1/C2;
+Amin=1/B;
+printf("The feedback factor of the circuit =%.1f \n",B);
+printf("The circuit needs a minimum voltage gain of %.0f",Amin);
diff --git a/2885/CH12/EX12.3/ex12_3.sce b/2885/CH12/EX12.3/ex12_3.sce
new file mode 100755
index 000000000..6f809b895
--- /dev/null
+++ b/2885/CH12/EX12.3/ex12_3.sce
@@ -0,0 +1,10 @@
+//Calculate frequency of oscillations
+clear;
+clc;
+//soltion
+//given
+
+R=10*10^3;//ohm
+C=0.01*10^-6;//F
+fo=1/(2*%pi*R*C*sqrt(6));
+printf("The frequency of oscillations= %.1f Hz\n",fo);
diff --git a/2885/CH12/EX12.4/ex12_4.sce b/2885/CH12/EX12.4/ex12_4.sce
new file mode 100755
index 000000000..1dd52d1e1
--- /dev/null
+++ b/2885/CH12/EX12.4/ex12_4.sce
@@ -0,0 +1,10 @@
+//Calculate frequency of oscillations
+clear;
+clc;
+//soltion
+//given
+
+R=22*10^3;//ohm
+C=100*10^-12;//F
+fo=1/(2*%pi*R*C);
+printf("The frequency of oscillations= %.2f KHz\n",fo/1000);
diff --git a/2885/CH12/EX12.5/ex12_5.sce b/2885/CH12/EX12.5/ex12_5.sce
new file mode 100755
index 000000000..7657aad6a
--- /dev/null
+++ b/2885/CH12/EX12.5/ex12_5.sce
@@ -0,0 +1,20 @@
+//Determine the series and parallel resonant frequencies
+clear;
+clc;
+//soltion
+
+function [z]=prll(r1,r2)//Function for the parallel combination of resistor
+ z=r1*r2/(r1+r2);
+endfunction
+
+//given
+
+L=3;//H
+Cm=10*10^-12;//F
+Cs=0.05*10^-12;//F
+fs=1/(2*%pi*sqrt(L*Cs));
+printf("The series resonant frequency =%.0f kHz\n",fs/1000);
+
+Cp=prll(Cm,Cs);
+fp=1/(2*%pi*sqrt(L*Cp));
+printf("The parallel resonant frequency =%.0f kHz",fp/1000);
diff --git a/2885/CH14/EX14.1/ex14_1.sce b/2885/CH14/EX14.1/ex14_1.sce
new file mode 100755
index 000000000..a4a375e93
--- /dev/null
+++ b/2885/CH14/EX14.1/ex14_1.sce
@@ -0,0 +1,14 @@
+//Calculate voltage gain and input and output resistance
+clear;
+clc;
+//soltion
+//given
+
+R1=20*10^3;//ohm
+Rf=2000*10^3;//ohm
+Acl=-Rf/R1;
+Ricl=R1;
+Ro=0;
+printf("The voltage gain= %.0f\n",Acl);
+printf("The input resistance =%.0f kΩ\n",R1/1000);
+printf("The output resistance =%.0f Ω\n",Ro);
diff --git a/2885/CH14/EX14.2/ex14_2.sce b/2885/CH14/EX14.2/ex14_2.sce
new file mode 100755
index 000000000..96e16020a
--- /dev/null
+++ b/2885/CH14/EX14.2/ex14_2.sce
@@ -0,0 +1,12 @@
+//Find the output voltage
+clear;
+clc;
+//soltion
+//given
+
+R1=20*10^3;//ohm
+Rf=2000*10^3;//ohm
+v1=4;//V
+v2=3.8;//V
+vo=v2*(1+Rf/R1)-(Rf/R1)*v1;
+printf("The output voltage= %.1f V",vo);
diff --git a/2885/CH14/EX14.4/ex14_4.sce b/2885/CH14/EX14.4/ex14_4.sce
new file mode 100755
index 000000000..98d56d5dc
--- /dev/null
+++ b/2885/CH14/EX14.4/ex14_4.sce
@@ -0,0 +1,17 @@
+//Design an adder circuit using an op amp
+clear;
+clc;
+//soltion
+//given
+
+//Vo=-(V1+10*V2+100*V3)
+Rf=100*10^3;//ohm
+C1=1; //coefficient of V1
+C2=10; //coefficient of V2
+C3=100; //coefficient of V3
+R1=Rf/C1;
+R2=Rf/C2;
+R3=Rf/C3;
+printf("R1 = %.0f kΩ\n",R1/1000);
+printf("R2 = %.0f kΩ\n",R2/1000);
+printf("R3 = %.0f kΩ\n",R3/1000);
diff --git a/2885/CH14/EX14.5/ex14_5.sce b/2885/CH14/EX14.5/ex14_5.sce
new file mode 100755
index 000000000..0fd2053ef
--- /dev/null
+++ b/2885/CH14/EX14.5/ex14_5.sce
@@ -0,0 +1,10 @@
+//Calculate CMRR in dB
+clear;
+clc;
+//soltion
+//given
+
+Ad=100; //differential mode gain
+Ac=0.01; //common mode gain
+CMRR=20*log10(Ad/Ac);
+printf("The CMRR in dB %.0f dB",CMRR);
diff --git a/2885/CH14/EX14.6/ex14_6.sce b/2885/CH14/EX14.6/ex14_6.sce
new file mode 100755
index 000000000..414629023
--- /dev/null
+++ b/2885/CH14/EX14.6/ex14_6.sce
@@ -0,0 +1,14 @@
+//Calculate the output voltage
+clear;
+clc;
+//soltion
+//given
+
+Ad=2000; //differential mode gain
+CMRR=10000;
+V1=10^-3;//V
+V2=0.9*10^-3;//V
+Vd=V1-V2;
+Vc=(V1+V2)/2;
+Vo=Ad*Vd*(1+Vc/(CMRR*Vd));
+printf("The output voltage is %.2f mV",Vo*1000);
diff --git a/2885/CH15/EX15.1/ex15_1.sce b/2885/CH15/EX15.1/ex15_1.sce
new file mode 100755
index 000000000..207217302
--- /dev/null
+++ b/2885/CH15/EX15.1/ex15_1.sce
@@ -0,0 +1,13 @@
+//Calculate shunt resistance and multiplying factor
+clear;
+clc;
+//soltion
+//given
+
+Im=5*10^-3;//A
+Rm=20;//ohm
+I=5;//A
+Rsh=Rm*Im/(I-Im);
+n=I/Im;
+printf("Shunt resistance= %.5f Ω\n",Rsh);
+printf("Multiplying factor= %.0f",n);
diff --git a/2885/CH15/EX15.2/ex15_2.sce b/2885/CH15/EX15.2/ex15_2.sce
new file mode 100755
index 000000000..f3a8473c2
--- /dev/null
+++ b/2885/CH15/EX15.2/ex15_2.sce
@@ -0,0 +1,24 @@
+//Calculate shunt resistance
+clear;
+clc;
+//soltion
+//given
+
+//At I= 1 mA
+I1=1*10^-3;//A
+Im=0.1*10^-3;//A
+Rm=500;//ohm
+Rsh=Rm*Im/(I1-Im);
+printf("Shunt resistance= %.4f Ω\n",Rsh);
+
+
+//At I= 1 mA
+I2=10*10^-3;//A
+Rsh=Rm*Im/(I2-Im);
+printf("Shunt resistance= %.4f Ω\n",Rsh);
+
+
+//At I= 1 mA
+I3=100*10^-3;//A
+Rsh=Rm*Im/(I3-Im);
+printf("Shunt resistance= %.4f Ω\n",Rsh);
diff --git a/2885/CH15/EX15.3/ex15_3.sce b/2885/CH15/EX15.3/ex15_3.sce
new file mode 100755
index 000000000..a7e942190
--- /dev/null
+++ b/2885/CH15/EX15.3/ex15_3.sce
@@ -0,0 +1,11 @@
+//Caluclate the series resistance to convert it into voltmeter
+clear;
+clc;
+//soltion
+//given
+
+Im=100*10^-6;//A
+Rm=100;//ohm
+V=100;//V
+Rs=V/Im-Rm;
+printf("The value of series resistance is %.1f kΩ",Rs/1000);
diff --git a/2885/CH15/EX15.4/ex15_4.sce b/2885/CH15/EX15.4/ex15_4.sce
new file mode 100755
index 000000000..826892181
--- /dev/null
+++ b/2885/CH15/EX15.4/ex15_4.sce
@@ -0,0 +1,14 @@
+//Calculate multiplier resistance and voltage multiplying factor
+clear;
+clc;
+//soltion
+//given
+
+Im=50*10^-6;//A
+Rm=1000;//ohm
+V=50;//V
+Rs=V/Im-Rm;
+printf("The value of multiplier resistance is %.0f kΩ\n",Rs/1000);
+Vm=Im*Rm;
+n=V/Vm;
+printf("Voltage multiplying factor =%.0f",n);
diff --git a/2885/CH15/EX15.5/ex15_5.sce b/2885/CH15/EX15.5/ex15_5.sce
new file mode 100755
index 000000000..a1d725b6f
--- /dev/null
+++ b/2885/CH15/EX15.5/ex15_5.sce
@@ -0,0 +1,35 @@
+//Calculate reading and error of each voltmeter
+clear;
+clc;
+//soltion
+
+function [z]=prll(r1,r2)//Function for the parallel combination of resistor
+ z=r1*r2/(r1+r2);
+endfunction
+
+//given
+
+S_A=1000;// Ω/V //sensitivity
+S_B=20000;// Ω/V //sensitivity
+R=50;//V //range of voltmeter
+Vs=150;//V //Supply
+R1=100*10^3;//ohm
+R2=50*10^3;//ohm
+Vt=Vs*(R2/(R1+R2));
+
+//Voltmeter A
+Ri1=S_A*R;
+Rxy_A=prll(Ri1,R2); //total resistance at X and Y
+V1=Vs*(Rxy_A/(Rxy_A+R1));
+printf("The voltmeter indicates %.0f V\n",V1);
+
+//Voltmeter B
+Ri2=S_B*R;
+Rxy_B=prll(Ri2,R2); //total resistance at X and Y
+V2=Vs*(Rxy_B/(Rxy_B+R1));
+printf("The voltmeter indicates %.2f V\n",V2);
+
+e1=(Vt-V1)*100/Vt;
+e2=(Vt-V2)*100/Vt;
+printf("The error in the reading of voltmeter A = %.0f percent\n",e1);
+printf("The error in the reading of voltmeter A = %.1f percent",e2);
diff --git a/2885/CH15/EX15.6/ex15_6.sce b/2885/CH15/EX15.6/ex15_6.sce
new file mode 100755
index 000000000..9654d7a36
--- /dev/null
+++ b/2885/CH15/EX15.6/ex15_6.sce
@@ -0,0 +1,11 @@
+//Determine rms value of the ac voltage
+clear;
+clc;
+//soltion
+//given
+
+l=8.3;//cm //length of the trace
+D=5;// V/cm //deflection sensitivity
+Vpp=l*D;
+Vrms=Vpp/(2*sqrt(2));
+printf("The rms value of the ac voltage %.2f V",Vrms);
diff --git a/2885/CH15/EX15.7/ex15_7.sce b/2885/CH15/EX15.7/ex15_7.sce
new file mode 100755
index 000000000..5eed8ee51
--- /dev/null
+++ b/2885/CH15/EX15.7/ex15_7.sce
@@ -0,0 +1,16 @@
+//Determine rms value and frequency of the sine voltage
+clear;
+clc;
+//soltion
+//given
+
+l=3.5;//cm //length of the trace
+D=2;// V/cm //deflection sensitivity
+Vpp=l*D;
+Vrms=Vpp/sqrt(2);
+printf("The rms value of the sine voltage = %.2f V\n",Vrms);
+x=4;// cm //one cycle length on x axis
+t=0.5*10^-3;// s/cm //timebase setting
+T=x*t;
+f=1/T;
+printf("The frequency of the sine voltage = %.1f kHz",f/1000);
diff --git a/2885/CH2/EX2.1/ex2_1.sce b/2885/CH2/EX2.1/ex2_1.sce
new file mode 100755
index 000000000..e39664f73
--- /dev/null
+++ b/2885/CH2/EX2.1/ex2_1.sce
@@ -0,0 +1,13 @@
+//Calculate the conductivity and resistivity of germanium
+clear;
+clc;
+//soltion
+//given
+q=1.6*10^-19;//Coulomb //charge of an electron
+ni=2.5*10^19;//per m^3 //concentration
+un=0.36;//m^2/Vs //mobility of electron
+up=0.17;//m^2/Vs //mobility of holes
+con=q*ni*(un+up); //conductivity
+res=(1/con); //resistivity
+printf("The conductivty is %.2f S/m \n",con);
+printf("The resistivity is %.2f Ωm",res);
diff --git a/2885/CH2/EX2.2/ex2_2.sce b/2885/CH2/EX2.2/ex2_2.sce
new file mode 100755
index 000000000..82a5196ec
--- /dev/null
+++ b/2885/CH2/EX2.2/ex2_2.sce
@@ -0,0 +1,16 @@
+//Determine the conductivity of extrinsic semiconductor
+clear;
+clc;
+//soltion
+//given
+e=1.6*10^-19;//Coulomb //charge of an electron
+ni=1.5*10^16;//per m^3 //concentration
+un=0.13;//m^2/Vs //mobility of electron
+up=0.05;//m^2/Vs //mobility of holes
+Si=5*10^28;//per m^3 //atomic density in silicon
+dop=(1/(2*10^8)); //concentration of an antimony per silicon atoms
+Nd=dop*Si;//per m^3 //donor concentraion
+n=Nd;//per m^3 //free electron concentration
+p=(ni^2/Nd);//per m ^3 // hole concentration
+con=e*(n*un+p*up);
+printf("The conductivty is %.1f S/m \n",con);
diff --git a/2885/CH3/EX3.1/ex3_1.sce b/2885/CH3/EX3.1/ex3_1.sce
new file mode 100755
index 000000000..c13c420d8
--- /dev/null
+++ b/2885/CH3/EX3.1/ex3_1.sce
@@ -0,0 +1,12 @@
+//find the value of threshold voltage
+clear;
+clc;
+//soltion
+//given
+t1=25;//°C//initial temperature
+t2=100;//°C//final temperature
+V=2*10^-3;//V per celsius degree//decrease in barrier potential per degree
+V0=0.7//V//Potential at normal temperature
+Vd=(t2-t1)*V;//decrease in barrier potential
+Vt=V0-Vd;//threshold volatge at 100°C
+printf("Threshold volatge at 100°C = %.2f V",Vt);
diff --git a/2885/CH3/EX3.10/ex3_10.sce b/2885/CH3/EX3.10/ex3_10.sce
new file mode 100755
index 000000000..86816a4c6
--- /dev/null
+++ b/2885/CH3/EX3.10/ex3_10.sce
@@ -0,0 +1,18 @@
+//find dc power supplied to load and efficiency and PIV rating of the diode
+clear;
+clc;
+//soltion
+//given
+rf=2;//Ω//Dynamic forward resistance
+Rs=5;//Ω//resistaqnce of secondary
+Rl=25;//Ω//Load resistance
+Idc=0.1;//A//dc current to a load
+Pdc=Idc^2*Rl; //dc power
+n=(81.2*Rl)/(Rl+rf+Rs); //efficiency
+Im=(%pi*Idc)/2; //peak value current
+Vm=Im*(Rl+rf+Rs); //peak voltage
+Vlm=Vm-Im*(rf+Rs); //peak voltage across load
+PIV=Vm+Vlm;
+printf("The dc power supplied to the load is %.2f W\n",Pdc);
+printf("Efficiency = %.2f percent\n",n);
+printf("The peak inverse voltage is %.2f V",PIV);
diff --git a/2885/CH3/EX3.11/ex3_11.sce b/2885/CH3/EX3.11/ex3_11.sce
new file mode 100755
index 000000000..1e946ba74
--- /dev/null
+++ b/2885/CH3/EX3.11/ex3_11.sce
@@ -0,0 +1,25 @@
+//Calculate output voltage and current through load and voltage across series resistor and current and power dissipated in zener diode
+clear;
+clc;
+//soltion
+//given
+Vi=110;//V //input voltage
+Rl=6*10^3;// ohm //load resistance
+Rs=2*10^3;//ohm //series resistance
+Vz=60;//V //Zener voltage
+V=Vi*Rl/(Rs+Rl);
+
+//This V>Vz therefore Zener diode is ON
+
+Vo=Vz; //output voltage
+Il=Vo/Rl; //Current through load resistance
+Vs=Vi-Vo; //Voltage drop across the series resistor
+Is=Vs/Rs //current through the series resistor
+Iz=Is-Il ///By applying kirchhoff's law
+Pz=Vz*Iz //Power dissipated accross zener diode
+
+printf("The output voltage is %.0f V\n",Vo);
+printf("The current through load resistance is %.0f mA\n",Il*1000);
+printf("Voltage across series resistor is %.0f V\n",Vs)
+printf("Current in zener diode is %.0f mA\n",Iz*1000)
+printf("Power dissipated by zener diode %.0f mW",Pz*1000);
diff --git a/2885/CH3/EX3.12/ex3_12.sce b/2885/CH3/EX3.12/ex3_12.sce
new file mode 100755
index 000000000..26a30ac35
--- /dev/null
+++ b/2885/CH3/EX3.12/ex3_12.sce
@@ -0,0 +1,32 @@
+
+//Calculate max and min values of zener diode current
+clear;
+clc;
+//soltion
+//given
+Vimin=80;//V //minimum input voltage
+Vimax=120;//V //maximum input voltage
+Rl=10*10^3;// ohm //load resistance
+Rs=5*10^3;//ohm //series resistance
+Vz=50;//V //Zener voltage
+V=Vimin*Rl/(Rs+Rl);
+
+//This V>Vz therefore Zener diode is ON
+
+//For minimum value of zener diode
+
+Vo=Vz; //output voltage
+Vs=Vimin-Vo; //Voltage drop across the series resistor
+Is=Vs/Rs //current through the series resistor
+Il=Vo/Rl; //Current through load resistance
+Izmin=Is-Il;
+printf("\nMinimum values of zener diode current is %.0f mA\n",Izmin*1000);
+
+//For maximum value of zener diode
+
+Vo=Vz; //output voltage
+Vs=Vimax-Vo; //Voltage drop across the series resistor
+Is=Vs/Rs //current through the series resistor
+Il=Vo/Rl; //Current through load resistance
+Izmax=Is-Il;
+printf("Maximum values of zener diode current is %.0f mA",Izmax*1000);
diff --git a/2885/CH3/EX3.13/ex3_13.sce b/2885/CH3/EX3.13/ex3_13.sce
new file mode 100755
index 000000000..f28af9192
--- /dev/null
+++ b/2885/CH3/EX3.13/ex3_13.sce
@@ -0,0 +1,19 @@
+//determine value of the series resistor and wattage rating
+clear;
+clc;
+//soltion
+//given
+Vi=12;//V //input voltage
+Vz=7.2;//V //Zener voltage
+Izmin=10*10^-3;//A //min current through zener diode
+Ilmax=100*10^-3;//A //max current through load
+Ilmin=12*10^-3;//A //min current through load
+
+Vs=Vi-Vz; //Voltage drop across the series resistor
+Is=Izmin+Ilmax; //Current through the series resistor
+Rs=Vs/Is;
+printf("The series resistor so that 10mA current flow through zener diode is %.1f Ω\n",Rs);
+
+Izmax=Is-Ilmin; //max zener through zener diode
+Pmax=Izmax*Vz;
+printf("The maximum wattage rating is %.1f mW",Pmax*1000);
diff --git a/2885/CH3/EX3.14/ex3_14.sce b/2885/CH3/EX3.14/ex3_14.sce
new file mode 100755
index 000000000..29c946624
--- /dev/null
+++ b/2885/CH3/EX3.14/ex3_14.sce
@@ -0,0 +1,13 @@
+//Find the capacitance of a varactor diode
+clear;
+clc;
+//soltion
+//given
+C=5;//pf//capcitance of varactor diode at V=4V
+V=4;//V
+K=C*sqrt(4);
+
+//When bias voltage is increased upto 6 V
+Vn=6;//V//new bias voltage
+Cn=K/(sqrt(Vn));
+printf("Capacitance (At 6 V ) = %.3f pf",Cn);
diff --git a/2885/CH3/EX3.2/ex3_2.sce b/2885/CH3/EX3.2/ex3_2.sce
new file mode 100755
index 000000000..6de95ef89
--- /dev/null
+++ b/2885/CH3/EX3.2/ex3_2.sce
@@ -0,0 +1,23 @@
+//detrenmine dc resistance of silicon diode
+clear;
+clc;
+//soltion
+//given
+
+//At Id = 2 mA
+Id=2*10^-3;//Ampere//diode current
+Vd=0.5;//V//voltage(from given curve)
+Rf=(Vd/Id);
+printf("The dc resistance is %d Ω\n",Rf);
+
+//At Id = 20 mA
+Id=20*10^-3;//Ampere//diode current
+Vd=0.75;//V//voltage(from given curve)
+Rf=(Vd/Id);
+printf("The dc resistance is %.1f Ω\n",Rf);
+
+//At Vd = - 10 V
+Id=-2*10^-6;//Ampere//diode current(from given curve)
+Vd=-10;//V//voltage
+Rf=(Vd/Id);
+printf("The dc resistance is %d MΩ\n",Rf/10^6);
diff --git a/2885/CH3/EX3.3/ex3_3.sce b/2885/CH3/EX3.3/ex3_3.sce
new file mode 100755
index 000000000..26248a4f0
--- /dev/null
+++ b/2885/CH3/EX3.3/ex3_3.sce
@@ -0,0 +1,16 @@
+//determine dc & ac resistance of silicon diode
+clear;
+clc;
+//soltion
+//given
+Id=20*10^-3;//A//diode current
+Vd=0.75;//V// as given in the V-I graph
+Rf=Vd/Id;
+printf("The dc resistance of diode is %.1f Ω\n",Rf);
+
+//From Graph the values of dynamic voltage and current are
+//which is equal to MN and NL repectively (in graph)
+del_Vd=(0.8-0.68);//V
+del_Id=(40-0)*10^-3;//A
+rf=del_Vd/del_Id;
+printf("The ac resistance of the diode is %d Ω",rf)
diff --git a/2885/CH3/EX3.4/ex3_4.sce b/2885/CH3/EX3.4/ex3_4.sce
new file mode 100755
index 000000000..7176aa9b7
--- /dev/null
+++ b/2885/CH3/EX3.4/ex3_4.sce
@@ -0,0 +1,15 @@
+//determine ac resistance of silicon diode
+clear;
+clc;
+//soltion
+//given
+
+//At Id =10mA
+Id=10;//mA
+rf=25/Id;
+printf("The ac resistance of the diode is(At Id= 10mA) %.1f Ω\n",rf)
+
+//At Id =20mA
+Id=20;//mA
+rf=25/Id;
+printf("The ac resistance of the diode is(At Id= 20mA) %.2f Ω",rf)
diff --git a/2885/CH3/EX3.5/ex3_5.sce b/2885/CH3/EX3.5/ex3_5.sce
new file mode 100755
index 000000000..acc9bbb12
--- /dev/null
+++ b/2885/CH3/EX3.5/ex3_5.sce
@@ -0,0 +1,24 @@
+//Find current through diode
+clear;
+clc;
+//soltion
+//given
+Vt=0.3;//V//Threshold voltage
+rf=25;//ohm// average resistance
+
+//assuming it to be ideal
+//from fig 3.19
+Vaa=10;//V//supply
+R1=45;//ohm
+R2=5;//ohm
+Vab=Vaa*R2/(R1+R2);
+//Vab>Vt therefore diode is forward bias and no current flow through R2
+Idi=Vaa/R1; //for ideal
+printf("The diode current (for ideal) is %.0f mA\n",Idi*1000);
+
+//assuming it to be real
+//Thevenin's equivalent circuit parameters of fig 3.19
+Vth=Vaa*R2/(R1+R2);
+Rth=R1*R2/(R1+R2);
+Idr=(Vth-Vt)/(Rth+rf); //for real
+printf("The diode current (for real) is %.1f mA",Idr*1000);
diff --git a/2885/CH3/EX3.6/ex3_6.sce b/2885/CH3/EX3.6/ex3_6.sce
new file mode 100755
index 000000000..2439bea50
--- /dev/null
+++ b/2885/CH3/EX3.6/ex3_6.sce
@@ -0,0 +1,17 @@
+//Find current through resistance in given figure
+clear;
+clc;
+//soltion
+
+//From fig
+Vaa=20;//V//supply
+Vt=0.7;//V//threshold voltage of diode
+rf=5;//ohm //forward resistance
+R=90;//ohm//given resistor
+
+//Diode D1 and D4 are forward bias and D2 and D3 are reverse biased
+
+Vnet=Vaa-Vt-Vt;
+Rt=R+rf+rf;
+I=Vnet/Rt;
+printf("Current through 90 ohm resistor is %.0f mA",I*1000);
diff --git a/2885/CH3/EX3.7/ex3_7.sce b/2885/CH3/EX3.7/ex3_7.sce
new file mode 100755
index 000000000..0c586907c
--- /dev/null
+++ b/2885/CH3/EX3.7/ex3_7.sce
@@ -0,0 +1,18 @@
+//Find current drawn by the battery
+clear;
+clc;
+//soltion
+
+//From fig
+Vaa=10;//V//supply
+R1=100;//ohm
+R2=100;//ohm
+
+//Forward Bias
+Id=Vaa/R1;
+printf("Current drawn from battery (forward bias) %.1f A\n",Id);
+
+//Reverse Bias
+Rnet=R1+R2;
+Id=Vaa/Rnet;
+printf("Current drawn from battery (reverse bias) %.2f A",Id);
diff --git a/2885/CH3/EX3.8/ex3_8.sce b/2885/CH3/EX3.8/ex3_8.sce
new file mode 100755
index 000000000..97c4fd179
--- /dev/null
+++ b/2885/CH3/EX3.8/ex3_8.sce
@@ -0,0 +1,18 @@
+//determine dc current through load and rectification efficiency and peak inverse voltage
+clear;
+clc;
+//soltion
+//given
+TR=31/2;//Turn ratio of the transformer
+rf=20;//Ω//Dynamic forward resistance
+Rl=1000;//Ω//Load resistance
+Vt=0.66;//V//Threshold voltage of diode
+V=220;//V//input voltage of transformer
+Vp=sqrt(2)*220//V//peak value of primary voltage
+Vm=(1/TR)*Vp;
+Im=(Vm-Vt)/(rf+Rl);
+Idc=Im/%pi;
+n=40.6/(1+rf/Rl);
+printf("The dc current through load is %d mA\n",Idc*1000);
+printf("The rectification efficiency is %.1f percent\n",n);
+printf("Peak inverse voltage =Vm = %.2f V\n",Vm)
diff --git a/2885/CH3/EX3.9/ex3_9.sce b/2885/CH3/EX3.9/ex3_9.sce
new file mode 100755
index 000000000..3b6d50cf1
--- /dev/null
+++ b/2885/CH3/EX3.9/ex3_9.sce
@@ -0,0 +1,13 @@
+//determine dc voltage across load and peak inverse voltage across each diode
+clear;
+clc;
+//soltion
+//given
+TR=12/1;//Turn ratio of the transformer
+V=220;//V//input voltage of transformer
+Vp=sqrt(2)*220//V//peak value of primary voltage
+Vm=(1/TR)*Vp;
+Vdc=(2*Vm)/%pi;
+printf("The dc voltage across load %.1f V\n",Vdc);
+printf("Peak inverse voltage (for bridge rectifier) = %.1f V\n",Vm);
+printf("Peak inverse voltage (for centre tap rectifier) = %.2f V\n",2*Vm);
diff --git a/2885/CH4/EX4.1/ex4_1.sce b/2885/CH4/EX4.1/ex4_1.sce
new file mode 100755
index 000000000..7b1b4274f
--- /dev/null
+++ b/2885/CH4/EX4.1/ex4_1.sce
@@ -0,0 +1,12 @@
+//determine the collector and base current
+clear;
+clc;
+//soltion
+//given
+a=0.98;//dc alpha
+Ie=5*10^-3;//A//emitter current
+Ico=2*10^-6;//A//collector reverse leakage current
+Ic=a*Ie+Ico;
+Ib=Ie-Ic;
+printf("The collector current is %.3f mA\n",Ic*1000);
+printf("The base current is %.0f uA",Ib*10^6);
diff --git a/2885/CH4/EX4.10/ex4_10.sce b/2885/CH4/EX4.10/ex4_10.sce
new file mode 100755
index 000000000..8ac52ecf1
--- /dev/null
+++ b/2885/CH4/EX4.10/ex4_10.sce
@@ -0,0 +1,10 @@
+//calculate ac current gain in CE and CC configuration
+clear;
+clc;
+//soltion
+//given
+a=0.99;
+B=a/(1-a);
+printf("The ac current gain in CE configuration is %.0f\n",B);
+y=1+B;
+printf("The ac current gain in CC configuration is %.0f",y);
diff --git a/2885/CH4/EX4.2/ex4_2.sce b/2885/CH4/EX4.2/ex4_2.sce
new file mode 100755
index 000000000..9b90f3466
--- /dev/null
+++ b/2885/CH4/EX4.2/ex4_2.sce
@@ -0,0 +1,16 @@
+//determine the base and collector current and exact and approax dc alpha
+clear;
+clc;
+//soltion
+//given
+Ie=8.4*10^-3//A//emitter current
+Icbo=0.1*10^-6;//A//reverse leakage current
+Ib=0.008*Ie;//A//base current
+Ic=Ie-Ib;
+Icinj=Ic-Icbo;
+a0=Icinj/Ie;
+a=Ic/Ie;
+printf("Base current is %.1f uA\n",Ib*10^6);
+printf("Collector current %.4f mA\n",Ic*1000);
+printf("Exact value of alphha = %.7f\n",a0);
+printf("Approax value of alpha = %.3f",a);
diff --git a/2885/CH4/EX4.3/ex4_3.sce b/2885/CH4/EX4.3/ex4_3.sce
new file mode 100755
index 000000000..28d5e223c
--- /dev/null
+++ b/2885/CH4/EX4.3/ex4_3.sce
@@ -0,0 +1,12 @@
+//Determine the base current
+clear;
+clc;
+//soltion
+//given
+a=0.96; //dc alpha
+Rc=2*10^3;//ohm //resistor across collector
+Vc=4;//V //Voltage drop across the collector resistor
+Ic=Vc/Rc; //Colletor current
+Ie=Ic/a; //Emmiter current
+Ib=Ie-Ic; //Base current
+printf("The base current is %.0f uA",Ib*10^6)
diff --git a/2885/CH4/EX4.4/ex4_4.sce b/2885/CH4/EX4.4/ex4_4.sce
new file mode 100755
index 000000000..f1e1794a2
--- /dev/null
+++ b/2885/CH4/EX4.4/ex4_4.sce
@@ -0,0 +1,15 @@
+//determine dynamic input resistance
+clear;
+clc;
+//soltion
+//given
+Ie=2;//mA
+Vcb=10;//V
+
+//Taking points around Ie & Vcb from graph
+del_Ie=(2.5-1.5)*10^-3;//A
+
+//corresponding change in Veb
+del_Veb=(0.9-0.8);//V
+rib=del_Veb/del_Ie;
+printf("The dynamic input resistance of transistor is %.0f Ω",rib);
diff --git a/2885/CH4/EX4.5/ex4_5.sce b/2885/CH4/EX4.5/ex4_5.sce
new file mode 100755
index 000000000..4b62db5f0
--- /dev/null
+++ b/2885/CH4/EX4.5/ex4_5.sce
@@ -0,0 +1,8 @@
+//find dc current gain in common emitter configuration
+clear;
+clc;
+//soltion
+//given
+a=0.98;//dc current gain in common base configuration
+B=a/(1-a);
+printf("The dc current gain in common emitter configuration is %.0f",B);
diff --git a/2885/CH4/EX4.6/ex4_6.sce b/2885/CH4/EX4.6/ex4_6.sce
new file mode 100755
index 000000000..b9f69e0f4
--- /dev/null
+++ b/2885/CH4/EX4.6/ex4_6.sce
@@ -0,0 +1,11 @@
+//calculate ac alpha and beta
+clear;
+clc;
+//soltion
+//given
+ic=0.995//mA//Emitter current change
+ie=1//mA//collector current change
+a=ic/ie;
+B=a/(1-a);
+printf("The ac alpha is %.3f\n",a)
+printf("The common emitter ac current gain is %.0f",B);
diff --git a/2885/CH4/EX4.7/ex4_7.sce b/2885/CH4/EX4.7/ex4_7.sce
new file mode 100755
index 000000000..904f0f5b2
--- /dev/null
+++ b/2885/CH4/EX4.7/ex4_7.sce
@@ -0,0 +1,16 @@
+//Calculate beta and Iceo and exact and approax collector current
+clear;
+clc;
+//soltion
+//given
+a0=0.992;//dc current gain in common base configuration
+Icbo=48*10^-9;//A
+Ib=30*10^-6;//A//base current
+B=a0/(1-a0);
+Iceo=Icbo/(1-a0);
+printf("Beta= %.0f\n",B);
+printf("Iceo= %0.f uA\n",Iceo*10^6);
+Ic=B*Ib+Iceo;
+Ica=B*Ib;//approax
+printf("Exact collector current %.3f mA\n",Ic*1000);
+printf("Approax collector current %.2f mA",Ica*1000);
diff --git a/2885/CH4/EX4.8/ex4_8.sce b/2885/CH4/EX4.8/ex4_8.sce
new file mode 100755
index 000000000..2eea62127
--- /dev/null
+++ b/2885/CH4/EX4.8/ex4_8.sce
@@ -0,0 +1,16 @@
+//determine dynamic input resistance
+clear;
+clc;
+//soltion
+//given
+Vbe=0.75;//V
+Vce=2;//V
+
+//Taking points around Vbe=0.75V from graph
+del_Vbe=(0.98-0.9);//V
+
+//corresponding change in ib
+del_ib=(68-48)*10^-6;//A
+
+rie=del_Vbe/del_ib;
+printf("The dynamic input resistance of transistor is %.0f kΩ",rie/1000);
diff --git a/2885/CH4/EX4.9/ex4_9.sce b/2885/CH4/EX4.9/ex4_9.sce
new file mode 100755
index 000000000..351935d22
--- /dev/null
+++ b/2885/CH4/EX4.9/ex4_9.sce
@@ -0,0 +1,28 @@
+//determine dynamic input resistance and dc and ac current gain
+clear;
+clc;
+//soltion
+//given
+Ib=30*10^-6;//A
+Vce=10;//V
+Ic=3.6*10^-3;//A //from graph
+
+//Taking points around Vce = 10V from graph
+del_Vce=(12.5-7.5);//V
+
+//corresponding change in ic
+del_ic=(3.7-3.5)*10^-3;//A
+
+roe=del_Vce/del_ic;
+printf("The dynamic output resistance of transistor is %.0f kΩ\n",roe/1000);
+
+//dc current gain
+Bo=Ic/Ib;
+printf("The dc current gain is %.0f\n",Bo);
+
+//ac current gain
+
+del_ic=(4.7-2.5)*10^-3; //the collector current change is from 3.5mA to 4.7mA as we can see from graph when we change ib from 40mA to 20mA
+del_ib=(40-20)*10^-6;
+B=del_ic/del_ib;
+printf("The ac current gain is %.0f\n",B);
diff --git a/2885/CH5/EX5.1/ex5_1.sce b/2885/CH5/EX5.1/ex5_1.sce
new file mode 100755
index 000000000..af004ab0d
--- /dev/null
+++ b/2885/CH5/EX5.1/ex5_1.sce
@@ -0,0 +1,12 @@
+//Calculate saturation voltage and saturation current
+clear;
+clc;
+//soltion
+//given
+Vp=-4//V //pinch off voltage
+Idss=12*10^-3;//A //drain to source current with gate shorted
+Vgs=-2;//V //gate to source voltage
+Vds=Vgs-Vp;
+Id=Idss*(Vds/Vp)^2;
+printf("Saturation Voltage is %.0f V\n",Vds);
+printf("Saturation current is %.0f mA",Id*10^3);
diff --git a/2885/CH5/EX5.2/ex5_2.sce b/2885/CH5/EX5.2/ex5_2.sce
new file mode 100755
index 000000000..cffe4f06e
--- /dev/null
+++ b/2885/CH5/EX5.2/ex5_2.sce
@@ -0,0 +1,20 @@
+//Find the value of drain current
+clear;
+clc;
+//soltion
+//given
+Vgso=-5;//V //gate to source cut off voltage
+Idss=20*10^-3;//A //drain to source current with gate shorted
+
+//At vgs = -2 V
+vgs=-2;//V input voltage
+id=Idss*(1-(vgs/Vgso))^2; //Schockley's equation
+printf("Drain current is (At vgs = -2 V) %.1f mA\n",id*10^3);
+
+//At vgs = -4 V
+vgs=-4;//V input voltage
+id=Idss*(1-(vgs/Vgso))^2; //Schockley's equation
+printf("Drain current is (At vgs = -4 V) %.1f mA\n",id*10^3);
+
+//At vgs = -8 V
+printf("Drain current is 0 A (At vgs = -8 V) because gate is biased beyond cut off ");
diff --git a/2885/CH5/EX5.3/ex5_3.sce b/2885/CH5/EX5.3/ex5_3.sce
new file mode 100755
index 000000000..3f513c49f
--- /dev/null
+++ b/2885/CH5/EX5.3/ex5_3.sce
@@ -0,0 +1,14 @@
+//Calculate Vgs and Vds saturation
+clear;
+clc;
+//soltion
+//given
+Vp=5//V //pinch off voltage
+Idss=-15*10^-3;//A //drain to source current with gate shorted
+Id=-3*10^-3;//A //saturation current
+Vgs=Vp*(1-sqrt(Id/Idss));
+Vds=Vgs-Vp;
+printf("The gate to source voltage (Vgs) is %.3f V\n",Vgs);
+printf("The saturation voltage is Vds(sat)= %.3f V",Vds);
+
+// THe value of Vgs = 2.115V and Vds= -2.885V in book because of the calculation error
diff --git a/2885/CH5/EX5.4/ex5_4.sce b/2885/CH5/EX5.4/ex5_4.sce
new file mode 100755
index 000000000..c41a12b5b
--- /dev/null
+++ b/2885/CH5/EX5.4/ex5_4.sce
@@ -0,0 +1,18 @@
+//Calculate drain current Id for N channel
+clear;
+clc;
+//soltion
+//given
+Vp=5//V //pinch off voltage
+Idss=18*10^-3;//A //drain to source current with gate shorted
+
+//For Vgs= - 3 V
+Vgs=-3;//V
+Id=Idss*(1-(Vgs/(-Vp)))^2;
+printf("The drain current Id(For Vgs= -3V) = %.2f mA\n",Id*10^3);
+
+//For Vgs= 2.5 V
+Vgs=2.5;//V
+Id=Idss*(1-(Vgs/(-Vp)))^2;
+printf("The drain current Id(For Vgs= 2.5V) = %.1f mA",Id*10^3);
+
diff --git a/2885/CH5/EX5.5/ex5_5.sce b/2885/CH5/EX5.5/ex5_5.sce
new file mode 100755
index 000000000..034c5d93e
--- /dev/null
+++ b/2885/CH5/EX5.5/ex5_5.sce
@@ -0,0 +1,17 @@
+//Calculate drain current Id for P channel
+clear;
+clc;
+//soltion
+//given
+Vp=-5//V //pinch off voltage
+Idss=18*10^-3;//A //drain to source current with gate shorted
+
+//For Vgs= -3V
+Vgs=-3;//V
+Id=Idss*(1-(Vgs/(-Vp)))^2;
+printf("The drain current Id (For Vgs= -3V) = %.2f mA\n",Id*10^3);
+
+//For Vgs= 2.5V
+Vgs=2.5;//V
+Id=Idss*(1-(Vgs/(-Vp)))^2;
+printf("The drain current Id (For Vgs= 2.5V) = %.1f mA",Id*10^3);
diff --git a/2885/CH5/EX5.6/ex5_6.sce b/2885/CH5/EX5.6/ex5_6.sce
new file mode 100755
index 000000000..759ef70a1
--- /dev/null
+++ b/2885/CH5/EX5.6/ex5_6.sce
@@ -0,0 +1,15 @@
+//Find the value of drain current
+clear;
+clc;
+//soltion
+//given
+Vt=2;//V //threshold voltage
+K=0.25*10^-3;// A/V^2 //conductivity parameter
+Vgs=3;//V //gate supply
+Vds=2;//V //saturation voltage
+Vdsm=Vgs-Vt; //minimum voltage required to pinch off
+
+// Vds > Vdsm therefore the device is in saturation region
+
+Id=K*(Vgs-Vt)^2;
+printf("The drain current is %.2f mA",Id*1000);
diff --git a/2885/CH5/EX5.7/ex5_7.sce b/2885/CH5/EX5.7/ex5_7.sce
new file mode 100755
index 000000000..f4716bda1
--- /dev/null
+++ b/2885/CH5/EX5.7/ex5_7.sce
@@ -0,0 +1,21 @@
+//Find the value of Id
+clear;
+clc;
+//soltion
+//given
+Vt=1.5;//V //threshold voltage
+Id=2*10^-3;//A
+Vgs=3;//V //gate supply
+Vds=5;//V //saturation voltage
+Vdsm=Vgs-Vt; //minimum voltage required to pinch off
+
+// Vds > Vdsm therefore the device is in saturation region
+
+// Calculating K
+K=Id/((Vgs-Vt)^2); // A/V^2 //conductivity parameter
+
+//Calculating Id for Vgs= 5 V and Vds= 6 V
+Vgs=5;//V //gate supply
+Vds=6;//V //saturation voltage
+Id=K*((Vgs-Vt)^2);
+printf("The drain current is %.2f mA",Id*1000);
diff --git a/2885/CH5/EX5.8/ex5_8.sce b/2885/CH5/EX5.8/ex5_8.sce
new file mode 100755
index 000000000..b83f65c95
--- /dev/null
+++ b/2885/CH5/EX5.8/ex5_8.sce
@@ -0,0 +1,9 @@
+//Calculate the dynamic drain resistance
+clear;
+clc;
+//soltion
+//given
+gm=200*10^-6;//S trans conductance
+u=80;// amplification factor
+rd=u/gm;
+printf("The dynamic drain resistance is %.0f kΩ",rd/1000);
diff --git a/2885/CH6/EX6.1/ex6_1.sce b/2885/CH6/EX6.1/ex6_1.sce
new file mode 100755
index 000000000..875fd8a4a
--- /dev/null
+++ b/2885/CH6/EX6.1/ex6_1.sce
@@ -0,0 +1,19 @@
+//Determine the Q point
+clear;
+clc;
+//soltion
+//given
+B=50; //dc beta
+Rc=2.2*10^3;//ohm //resistor connected to collector
+Rb=270*10^3;//ohm //resistor connected to base
+Vcc=9;//V //Voltage supply across the collector resistor
+Vbe=0.7;//V //base to emitter voltage
+Ib=(Vcc-Vbe)/Rb; //Base current
+Ic=B*Ib; //Colletor current
+Ics=Vcc/Rc; //Colletor saturation current
+
+//Actual Ic is the smaller of the above two values
+
+Vce=Vcc-Ic*Rc;
+printf("The Q point is (%.2f V, %.1f mA)",Vce,Ic*1000);
+//In book Vce = 5.7 V because of approaximation
diff --git a/2885/CH6/EX6.10/ex6_10.sce b/2885/CH6/EX6.10/ex6_10.sce
new file mode 100755
index 000000000..ad84058b1
--- /dev/null
+++ b/2885/CH6/EX6.10/ex6_10.sce
@@ -0,0 +1,26 @@
+//Determine the collector current at two different B
+clear;
+clc;
+//soltion
+//given
+
+//At B=50
+
+B=50; //dc beta
+Rc=2;//ohm //resistor connected to collector
+Re=1000;//ohm //resistor connected to emitter
+Rb=300*10^3;//ohm //resistor connected to base
+Vcc=9;//V //Voltage supply across the collector resistor
+Ib=Vcc/(Rb+B*Re); //Base current
+Ic=B*Ib; //Colletor current
+printf("the collector current at (B=50)= %.3f mA\n",Ic*1000);
+
+//At B=150
+
+B1=150; //dc beta
+Ib1=Vcc/(Rb+B1*Re); //Base current
+Ic1=B1*Ib1; //Colletor current
+printf("the collector current at (B=150)= %.0f mA\n",Ic1*1000);
+printf("The factor at which collector current increases %.2f",Ic1/Ic);
+
+//IN BOOK Ic(AT B=50)= 1.25 mA and Ic1/Ic=2.4 DUE TO APPROAXIMATION
diff --git a/2885/CH6/EX6.11/ex6_11.sce b/2885/CH6/EX6.11/ex6_11.sce
new file mode 100755
index 000000000..7933b1be4
--- /dev/null
+++ b/2885/CH6/EX6.11/ex6_11.sce
@@ -0,0 +1,26 @@
+//Calculate Q point in voltage divider
+clear;
+clc;
+//soltion
+//given
+B=100; //dc beta
+Rc=2*10^3;//ohm //resistor connected to collector
+R1=10*10^3;//ohm //voltage divider resistor 1
+R2=1*10^3;//ohm //voltage divider resistor 2
+Re=200;//ohm //resistor connected to emitter
+Vcc=10;//V //Voltage supply across the collector resistor
+Vbe=0.3;//V //base to emitter voltage
+
+I=Vcc/(R1+R2); //current through voltage divider
+Vb=I*R2; //voltage at base
+Ve=Vb-Vbe;
+Ie=Ve/Re;
+Ic=Ie //approaximating Ib is nearly equal to 0
+Vc=Vcc-Ic*Rc;
+Vce=ceil(Vc)-Ve;
+printf("The Q point is (%.1f V, %.0f mA)",Vce,Ic*1000);
+
+Ibc=I/20; //critical value of base current
+Ib=Ic/B; //actual base current
+
+//Since Ib < Ibc, hence assumption is alright
diff --git a/2885/CH6/EX6.12/ex6_12.sce b/2885/CH6/EX6.12/ex6_12.sce
new file mode 100755
index 000000000..3873d7513
--- /dev/null
+++ b/2885/CH6/EX6.12/ex6_12.sce
@@ -0,0 +1,40 @@
+
+//Solve the voltage divider accurately by applying thevenin's theorem
+clear;
+clc;
+//soltion
+//given
+B=100; //dc beta
+Rc=2*10^3;//ohm //resistor connected to collector
+R1=10*10^3;//ohm //voltage divider resistor 1
+R2=1*10^3;//ohm //voltage divider resistor 2
+Re=200;//ohm //resistor connected to emitter
+Vcc=10;//V //Voltage supply across the collector resistor
+Vbe=0.3;//V //base to emitter voltage
+
+Vth=Vcc*R2/(R1+R2);
+Rth=R1*R2/(R1+R2);
+
+printf("\nThevenin equivalent voltage Vth = %.5f V",Vth);
+printf("\nThevenin equivalent resistance Rth = %.2f ohm",Rth);
+
+Ib=(Vth-Vbe)/(Rth+(1+B)*Re);
+Ic=B*Ib;
+Ie=Ic+Ib;
+Vce=Vcc-Ic*Rc-Ie*Re;
+printf("\nThe accurate value of Ic = %.5f mA",Ic*10^3);
+printf("\nThe accurate value of Vce = %.6f V",Vce);
+Icp=3*10^-3; // Current calculated by voltage divider in previous example
+Vcep=3.4; // Voltage calculated by voltage divider in previous example
+Err_Ic=(Ic-Icp)*100/Ic;
+Err_Vce=(Vce-Vcep)*100/Vce;
+printf("\nError in Ic= %.1f percent\n",Err_Ic);
+printf("Error in Vce= %.0f percent",Err_Vce);
+
+// The errors and The accurate values are different
+// because of the approaximation in Vth and Rth in book
+
+// In Book Ic = 2.8436 mA and Vce = 3.73839 V
+// Error in Ic = -5.5%
+// Error in Vce = +9%
+
diff --git a/2885/CH6/EX6.13/ex6_13.sce b/2885/CH6/EX6.13/ex6_13.sce
new file mode 100755
index 000000000..9010857e4
--- /dev/null
+++ b/2885/CH6/EX6.13/ex6_13.sce
@@ -0,0 +1,15 @@
+//determine the Q point for the emitter bias circuit
+clear;
+clc;
+//soltion
+//given
+B=100; //dc beta
+Rc=5*10^3;//ohm //resistor connected to collector
+Rb=10*10^3;//ohm //resistor connected to base
+Re=10*10^3;//ohm //resistor connected to emitter
+Vcc=12;//V //Voltage supply across the collector resistor
+Vee=15;//V //supply at emitter
+Ie=Vee/Re;
+Ic=Ie;
+Vce=Vcc-Ic*Rc;
+printf("The Q point is (%.1f V, %.1f mA)",Vce,Ic*1000);
diff --git a/2885/CH6/EX6.14/ex6_14.sce b/2885/CH6/EX6.14/ex6_14.sce
new file mode 100755
index 000000000..3c61c4ad2
--- /dev/null
+++ b/2885/CH6/EX6.14/ex6_14.sce
@@ -0,0 +1,15 @@
+//Calculate Vgs and Rs
+clear;
+clc;
+//soltion
+//given
+
+Vp=2;//V
+Idss=1.75*10^-3;//A //drain current at Vgs=0
+Vdd=24;//V //drain to supply source
+Id=1*10^-3;//A //drain current
+Vgs=(-Vp)*(1-sqrt(Id/Idss));
+Rs=abs(Vgs)/Id;
+printf("Vgs = %.3f V\n",Vgs);
+printf("Rs = %.0f Ω",Rs);
+
diff --git a/2885/CH6/EX6.2/ex6_2.sce b/2885/CH6/EX6.2/ex6_2.sce
new file mode 100755
index 000000000..adfbbaf44
--- /dev/null
+++ b/2885/CH6/EX6.2/ex6_2.sce
@@ -0,0 +1,18 @@
+//Determine the Q point
+clear;
+clc;
+//soltion
+//given
+B=150; //dc beta
+Rc=1*10^3;//ohm //resistor connected to collector
+Rb=100*10^3;//ohm //resistor connected to base
+Vcc=10;//V //Voltage supply across the collector resistor
+Vbe=0.7;//V //base to emitter voltage
+Ib=(Vcc-Vbe)/Rb; //Base current
+Ic=B*Ib; //Colletor current
+Ics=Vcc/Rc; //Colletor saturation current
+
+//Actual Ic is the smaller of the above two values i.e. Ic(sat) and since the transistor is in saturation mode therefore Vce will become 0
+
+Vce=0;
+printf("The Q point is (%d V, %.0f mA)",Vce,Ics*1000);
diff --git a/2885/CH6/EX6.3/ex6_3.sce b/2885/CH6/EX6.3/ex6_3.sce
new file mode 100755
index 000000000..9109d3a38
--- /dev/null
+++ b/2885/CH6/EX6.3/ex6_3.sce
@@ -0,0 +1,27 @@
+//Determine Rb and percentage change in collector current due to temperature rise
+clear;
+clc;
+//soltion
+//given
+
+//Calculating the base resistance
+B=20; //dc beta
+Rc=1*10^3;//ohm //resistor connected to collector
+Ic=1*10^-3;//A //collector current
+Vcc=6;//V //Voltage supply across the collector resistor
+Vbe=0.3;//V //for germanium
+Icbo=2*10^-6;//A //collector to base leakage current
+
+Ib=(Ic-(1+B)*Icbo)/B;
+Rb=(Vcc-Vbe)/Ib;
+
+printf("The value of resistor Ib is %.4f kΩ = 120 kΩ \n",Rb/1000);
+
+Rb=120*10^3;//ohm approax
+
+//Now when temperature rise
+Icbo=10*10^-6;//A //collector to base leakage current
+B=25; //dc beta
+Ic1=B*Ib+(B+1)*Icbo; //changed collector current
+perc=(Ic1-Ic)*100/Ic; //percentage increase
+printf("The percentage change in collector current is %.0f percent",perc);
diff --git a/2885/CH6/EX6.4/ex6_4.sce b/2885/CH6/EX6.4/ex6_4.sce
new file mode 100755
index 000000000..54bb51716
--- /dev/null
+++ b/2885/CH6/EX6.4/ex6_4.sce
@@ -0,0 +1,33 @@
+//Determine the Q point at two different B
+clear;
+clc;
+//soltion
+//given
+
+//At B=50
+
+B=50; //dc beta
+Rc=2*10^3;//ohm //resistor connected to collector
+Rb=300*10^3;//ohm //resistor connected to base
+Vcc=9;//V //Voltage supply across the collector resistor
+Ib=Vcc/Rb; //Base current
+Ic=B*Ib; //Colletor current
+Ics=Vcc/Rc; //Colletor saturation current
+
+//Actual Ic is the smaller of the above two values
+
+Vce=Vcc-Ic*Rc;
+printf("The Q point (At B=50) is (%.0f V, %.1f mA)\n",Vce,Ic*1000);
+
+//At B=150
+
+B1=150; //dc beta
+Ic1=B*Ib; //Colletor current
+Ics1=Vcc/Rc; //Colletor saturation current
+
+//Actual Ic is the smaller of the above two values i.e. Ic(sat) and since the transistor is in saturation mode therefore Vce will become 0
+
+Vce=0;
+printf("The Q point (At B=150) is (%d V, %.1f mA)\n",Vce,Ics*1000);
+
+printf("The factor at which collector current increases %.0f",Ics1/Ic);
diff --git a/2885/CH6/EX6.5/ex6_5.sce b/2885/CH6/EX6.5/ex6_5.sce
new file mode 100755
index 000000000..8f3662de8
--- /dev/null
+++ b/2885/CH6/EX6.5/ex6_5.sce
@@ -0,0 +1,17 @@
+//determine Q point in collector to base bias circuit
+clear;
+clc;
+//soltion
+//given
+B=100; //dc beta
+Rc=500;//ohm //resistor connected to collector
+Rb=500*10^3;//ohm //resistor connected to base
+Vcc=10;//V //Voltage supply across the collector resistor
+Ib=Vcc/(Rb+B*Rc); //Base current
+Ic=B*Ib; //Colletor current
+Ics=Vcc/Rc; //Colletor saturation current
+
+//Actual Ic is the smaller of the above two values
+
+Vce=Vcc-(Ic+Ib)*Rc;
+printf("The Q point is (%.1f V, %.1f mA)",Vce,Ic*1000);
diff --git a/2885/CH6/EX6.6/ex6_6.sce b/2885/CH6/EX6.6/ex6_6.sce
new file mode 100755
index 000000000..d700133f4
--- /dev/null
+++ b/2885/CH6/EX6.6/ex6_6.sce
@@ -0,0 +1,18 @@
+//Calculate the collector current and change in it if B is changed by three times of previous B
+clear;
+clc;
+//soltion
+//given
+B=50; //dc beta
+Rc=2*10^3;//ohm //resistor connected to collector
+Rb=300*10^3;//ohm //resistor connected to base
+Vcc=9;//V //Voltage supply across the collector as it is PNP so taking positive
+Ib=Vcc/(Rb+B*Rc); //Base current
+Ic=B*Ib; //Colletor current
+printf("Collector current (B=50)= %.3f mA\n",Ic*1000);
+//Now B=150
+B=3*B; //three times of previous B
+Ib1=Vcc/(Rb+B*Rc); //Base current
+Ic1=B*Ib1; //Colletor current
+printf("Collector current (B=150)= %.2f mA\n",Ic1*1000);
+printf("The factor at which collector current increases %.0f",Ic1/Ic);
diff --git a/2885/CH6/EX6.7/ex6_7.sce b/2885/CH6/EX6.7/ex6_7.sce
new file mode 100755
index 000000000..9fbb63352
--- /dev/null
+++ b/2885/CH6/EX6.7/ex6_7.sce
@@ -0,0 +1,15 @@
+//Calculate the value of all three current Ie and Ic and Ib
+clear;
+clc;
+//soltion
+//given
+B=90; //dc beta
+Rc=1*10^3;//ohm //resistor connected to collector
+Rb=500*10^3;//ohm //resistor connected to base
+Re=500;//ohm //resistor connected to emitter
+Vcc=9;//V //Voltage supply across the collector resistor
+Ib=Vcc/(Rb+B*Re); //Base current
+Ic=B*Ib; //Colletor current
+Ie=Ic+Ib; //Emitter current
+printf("Base current = %.1f uA \nCollector current = %.3f mA \nEmitter current = %.4f mA",Ib*10^6,Ic*10^3,Ie*10^3);
+
diff --git a/2885/CH6/EX6.8/ex6_8.sce b/2885/CH6/EX6.8/ex6_8.sce
new file mode 100755
index 000000000..cb862e51d
--- /dev/null
+++ b/2885/CH6/EX6.8/ex6_8.sce
@@ -0,0 +1,35 @@
+//Calculate max and min value of emitter current
+clear;
+clc;
+//soltion
+//given
+
+//At B=50
+
+B=50; //dc beta
+Rc=75;//ohm //resistor connected to collector
+Re=100;//ohm //resistor connected to emitter
+Rb=10*10^3;//ohm //resistor connected to base
+Vcc=6;//V //Voltage supply across the collector resistor
+Vbe=0.3;//V //for germanium
+Ib=(Vcc-Vbe)/(Rb+(1+B)*Re); //Base current
+Ie=(1+B)*Ib;
+Vce=Vcc-(Rc+Re)*Ie
+printf("Minimum emitter current %.2f mA\n",Ie*10^3);
+printf("The collector to emitter volatge is %.2f V\n",Vce);
+
+//At B=300
+
+B1=300; //dc beta
+Ib1=(Vcc-Vbe)/(Rb+(1+B1)*Re); //Base current
+Ie1=(1+B1)*Ib1;
+Vce1=Vcc-(Rc+Re)*Ie1
+//Here Vce1= -1.4874 V but can never have negative voltage because Ie1 is wrong as it can't be more than saturation value therefore
+Ie1=Vcc/(Rc+Re);
+
+//And Vce=0 V
+
+Vce1=0;//V
+printf("Maximum emitter current %.2f mA\n",Ie1*10^3);
+printf("The collector to emitter volatge(saturation) is %.0f V\n",Vce1);
+
diff --git a/2885/CH6/EX6.9/ex6_9.sce b/2885/CH6/EX6.9/ex6_9.sce
new file mode 100755
index 000000000..0a81225a7
--- /dev/null
+++ b/2885/CH6/EX6.9/ex6_9.sce
@@ -0,0 +1,16 @@
+//Determine the value of base resistance
+clear;
+clc;
+//soltion
+//given
+
+B=100; //dc beta
+Rc=200;//ohm //resistor connected to collector
+Re=500;//ohm //resistor connected to emitter
+Vcc=9;//V //Voltage supply across the collector as it is PNP so taking positive
+Vce=4.5;//V //Collector to emitter voltage
+Ic=(Vcc-Vce)/(Rc+Re);
+Ib=Ic/B;
+Rb=(Vcc-B*Re*Ib)/Ib;
+printf("The value of base resistance is %.0f kΩ",Rb/1000);
+
diff --git a/2885/CH7/EX7.1/ex7_1.sce b/2885/CH7/EX7.1/ex7_1.sce
new file mode 100755
index 000000000..7ce2d6c3c
--- /dev/null
+++ b/2885/CH7/EX7.1/ex7_1.sce
@@ -0,0 +1,18 @@
+//Calculate max current and check will the capacitor act as short for given frequency
+clear;
+clc;
+//soltion
+//given
+
+C=100*10^-6;//Farad
+Rs=1*10^3;//ohm
+Rl=4*10^3;//ohm
+Vs=1;//V
+Imax=Vs/(Rs+Rl);
+fc=1/(2*%pi*(Rs+Rl)*C) //critical frequency
+fh=10*fc; //Border frequency
+printf("Maximum current is %.0f uA\n",Imax*10^6);
+printf("fh = %.2f Hz\n",fh);
+printf("As long as source frequency is greater than %.2f Hz, the coupling capacitor acts like an ac short for 20Hz to 20kHz.",fh)
+
+//In book Imax is 200mA but there is misprinting of 'm' in mA it should be uA
diff --git a/2885/CH7/EX7.10/ex7_10.sce b/2885/CH7/EX7.10/ex7_10.sce
new file mode 100755
index 000000000..49c9f43df
--- /dev/null
+++ b/2885/CH7/EX7.10/ex7_10.sce
@@ -0,0 +1,14 @@
+//Determine the small signal voltage gain and input and output resistance
+clear;
+clc;
+//soltion
+//given
+
+Rd=2*10^3;//ohm
+rd=100*10^3;//ohm
+Rg=1*10^6;//ohm
+gm=2*10^-3;//S
+Av=-gm*(rd*Rd/(rd+Rd));
+Ri=Rg;
+Ro=rd*Rd/(rd+Rd);
+printf("The small signal voltage gain = %.0f\ninput resistance= %.0f MΩ\noutput resistance = %.0f kΩ",Av,Ri/10^6,Ro/1000);
diff --git a/2885/CH7/EX7.11/ex7_11.sce b/2885/CH7/EX7.11/ex7_11.sce
new file mode 100755
index 000000000..9f34b28d1
--- /dev/null
+++ b/2885/CH7/EX7.11/ex7_11.sce
@@ -0,0 +1,19 @@
+//Determine the small signal voltage gain and input and output resistance
+clear;
+clc;
+//soltion
+//given
+
+R1=500*10^3;//ohm
+R2=50*10^3;//ohm
+Rd=5*10^3;//ohm
+Rs=100;//ohm
+Rl=5*10^3;//ohm
+gm=1.5*10^-3;//S
+rd=200*10^3;//ohm
+Rg=R1*R2/(R1+R2);
+Rac=Rd*Rl/(Rd+Rl);
+Av=-gm*Rac;
+Ri=Rg;
+Ro=(rd*Rac/(rd+Rac));
+printf("The small signal voltage gain = %.2f\ninput resistance= %.2f kΩ\noutput resistance = %.1f kΩ",Av,Ri/1000,Ro/1000);
diff --git a/2885/CH7/EX7.12/ex7_12.sce b/2885/CH7/EX7.12/ex7_12.sce
new file mode 100755
index 000000000..ac577261d
--- /dev/null
+++ b/2885/CH7/EX7.12/ex7_12.sce
@@ -0,0 +1,15 @@
+//Calculate the voltage gain of the FET
+clear;
+clc;
+//soltion
+//given
+
+Idss=8*10^-3;//A
+Vp=4;//V
+rd=25*10^3;//ohm
+Rd=2.2*10^3;//ohm //by the help of figure
+Vgs=-1.8;//V
+gmo=2*Idss/(abs(Vp));
+gm=gmo*(1-(Vgs/(-Vp)));
+Av=-gm*(rd*Rd/(rd+Rd));
+printf("The voltage gain of the FET %.2f",Av);
diff --git a/2885/CH7/EX7.2/ex7_2.sce b/2885/CH7/EX7.2/ex7_2.sce
new file mode 100755
index 000000000..7fd3e2e10
--- /dev/null
+++ b/2885/CH7/EX7.2/ex7_2.sce
@@ -0,0 +1,14 @@
+//Check whether the capacitor is an effective bypass for the signal currents of lowest frequency 20 Hz
+clear;
+clc;
+//soltion
+//given
+
+C=100*10^-6;//Farad
+Rs=1*10^3;//ohm
+Rl=4*10^3;//ohm
+f=20;//Hz //lowest frequency
+Xc=1/(2*%pi*f*C) //reactance of capacitor at 20Hz
+Rth=Rs*Rl/(Rs+Rl); //Thevenin's equivalent resistance
+printf("Xc < Rth/10 = %.1f Ω < %.1f Ω is satisfied\n",Xc,Rth/10);
+printf("The capacitor of 100uF will work as a good bypass for frequencies greater than 20 Hz ")
diff --git a/2885/CH7/EX7.3/ex7_3.sce b/2885/CH7/EX7.3/ex7_3.sce
new file mode 100755
index 000000000..5fe2e2157
--- /dev/null
+++ b/2885/CH7/EX7.3/ex7_3.sce
@@ -0,0 +1,18 @@
+//Calculate the value of capacitor required
+clear;
+clc;
+//soltion
+//given
+
+Rs1=20*10^3;//ohm
+Rs2=30*10^3;//ohm
+Rl1=40*10^3;//ohm
+Rl2=80*10^3;//ohm
+Rl3=80*10^3;//ohm
+Rth=Rs1*Rs2/(Rs1+Rs2); //Thevenin's equivalent resistance
+Rl_=Rl2*Rl3/(Rl2+Rl3);
+Rl=Rl1*Rl_/(Rl1+Rl_); //Equivalent load
+f=50;//Hz //lowest frequency
+R=Rth+Rl;
+C=10/(2*%pi*f*R)
+printf("The required value of coupling capacitor is %.0f uF",C*10^6);
diff --git a/2885/CH7/EX7.4/ex7_4.sce b/2885/CH7/EX7.4/ex7_4.sce
new file mode 100755
index 000000000..1fff1d0d1
--- /dev/null
+++ b/2885/CH7/EX7.4/ex7_4.sce
@@ -0,0 +1,42 @@
+//Calculate voltage and current gain and input and output resistance
+clear;
+clc;
+//soltion
+
+function [z]=prll(r1,r2)//Function for the parallel combination of resistor
+ z=r1*r2/(r1+r2);
+endfunction
+
+//given
+
+//DC analysis
+Vcc=12;//V
+Rb=200*10^3;//ohm
+Rc=1*10^3;//ohm
+B=100;// beta
+Ib=Vcc/Rb;
+Ic=B*Ib;
+Icsat=Vcc/Rc;
+Vce=Vcc-Ic*Rc;
+printf("The Q point of DC analysis= (%.0f V, %.0f mA)\n",Vce,Ic*1000);
+
+//AC analysis
+Rl=1*10^3;//ohm
+hfe=B;
+hie=2*10^3;//ohm
+hoe_1=40*10^3;//ohm // 1/hoe
+Rac=prll(Rc,Rl);
+Av=-hfe*Rac/hie;
+printf("The voltage gain = %.0f\n",Av);
+
+//Siince (1/hoe) > Rac therefore entire current will flows through Rac
+Io=-100*Ib;
+Ac=Io/Ib;
+printf("The current gain = %.0f\n",Ac);
+
+Ri=prll(Rb,hie);
+Ro=prll(Rl,prll(Rc,hoe_1));
+printf("The input resistance= %.0f kΩ\n",Ri/1000);
+printf("The output resistance= %.1f kΩ",Ro/1000);
+
+//In book the voltage gain is 25 due to skipping of '-' in printing
diff --git a/2885/CH7/EX7.5/ex7_5.sce b/2885/CH7/EX7.5/ex7_5.sce
new file mode 100755
index 000000000..68508daba
--- /dev/null
+++ b/2885/CH7/EX7.5/ex7_5.sce
@@ -0,0 +1,33 @@
+//Solve previous example using hybrid pie model
+clear;
+clc;
+//soltion
+function [z]=prll(r1,r2)//Function for the parallel combination of resistor
+ z=r1*r2/(r1+r2);
+endfunction
+
+//given
+
+Vcc=12;//V
+Rb=200*10^3;//ohm
+Rc=1*10^3;//ohm
+Rl=1*10^3;//ohm
+B=100;// beta
+hie=2*10^3;//ohm
+hoe_1=40*10^3;//ohm // 1/hoe
+
+Ib=Vcc/Rb;
+Ic=B*Ib;
+Rac=prll(Rc,Rl);
+gm=Ic/(25*10^-3);
+rpi=B/gm;
+ri=hie;
+rb=ri-rpi;
+ro=hoe_1;
+Vi=poly(0,"Vi"); //let the input be Vi
+Vpi=Vi*rpi/(rpi+rb);
+Vo=-gm*Vpi*Rac; //output voltage
+Av=Vo/Vi;
+printf("The voltage gain ");
+disp(Av);
+//In book voltage gain is -24.96 due to appraoximation
diff --git a/2885/CH7/EX7.6/ex7_6.sce b/2885/CH7/EX7.6/ex7_6.sce
new file mode 100755
index 000000000..e66e747ca
--- /dev/null
+++ b/2885/CH7/EX7.6/ex7_6.sce
@@ -0,0 +1,19 @@
+//Determine the value of output voltage
+clear;
+clc;
+//soltion
+//given
+
+Vcc=12;//V
+Rb=150*10^3;//ohm
+Rc=5*10^3;//ohm
+B=200;// beta
+hie=2*10^3;//ohm
+ro=60*10^3;//ohm // 1/hoe
+Vi=1*10^-3;//V
+Ib=Vcc/Rb;
+Ic=B*Ib;
+Icsat=Vcc/Rc;
+// Icsat < Ic therefore transistor is in saturation mode and outpuut voltage wil be zero
+Vo=0;
+printf("The output voltage= %.0f V",Vo);
diff --git a/2885/CH7/EX7.7/ex7_7.sce b/2885/CH7/EX7.7/ex7_7.sce
new file mode 100755
index 000000000..411cbf6d4
--- /dev/null
+++ b/2885/CH7/EX7.7/ex7_7.sce
@@ -0,0 +1,32 @@
+//Calculate voltage gain and input resistance
+clear;
+clc;
+//soltion
+
+function [z]=prll(r1,r2)//Function for the parallel combination of resistor
+ z=r1*r2/(r1+r2);
+endfunction
+
+//given
+R1=75*10^3;//ohm
+R2=7.5*10^3;//ohm
+Rc=4.7*10^3;//ohm
+Re=1.2*10^3;//ohm
+Rl=12*10^3;//ohm
+B=150;
+ri=2*10^3;//ohm
+Vcc=15;//V
+Vb=Vcc*R2/(R1+R2);
+Ve=Vb; //since Vbe=0
+Ie=Ve/Re;
+Ic=Ie;
+Icsat=Vcc/(Rc+Re);
+// Ic < Icsat therefore transistor is in active mode
+Vce=Vcc-Ic*(Rc+Re);
+printf("The Q point of DC analysis= (%.1f V, %.3f mA)\n",Vce,Ic*1000);
+
+Rac=prll(Rc,Rl);
+Av=-B*Rac/ri;
+printf("The voltage gain = %.1f\n",Av);
+Ri_=prll(ri,R2);
+printf("The input resistance= %.2f kΩ\n",Ri_/1000);
diff --git a/2885/CH7/EX7.8/ex7_8.sce b/2885/CH7/EX7.8/ex7_8.sce
new file mode 100755
index 000000000..c75130b4c
--- /dev/null
+++ b/2885/CH7/EX7.8/ex7_8.sce
@@ -0,0 +1,27 @@
+
+//Calculate the value of gm at different values of Vgs
+clear;
+clc;
+//soltion
+//given
+
+Idss=8*10^-3;//A
+Vp=4;//V
+//At Vgs= -0.5 V
+Vgs= -0.5;//V
+gmo=2*Idss/(abs(Vp));
+gm=gmo*(1-(Vgs/(-Vp)));
+printf("gmo = %.0f mS\n",gmo*1000);
+printf("gm (At Vgs = -0.5V) =%.1f mS\n",gm*1000);
+
+//At Vgs= -1.5 V
+Vgs= -1.5;//V
+gmo=2*Idss/(abs(Vp));
+gm=gmo*(1-(Vgs/(-Vp)));
+printf("gm (At Vgs = -1.5V) =%.1f mS\n",gm*1000);
+
+//At Vgs= -2.5 V
+Vgs= -2.5;//V
+gmo=2*Idss/(abs(Vp));
+gm=gmo*(1-(Vgs/(-Vp)));
+printf("gm (At Vgs = -2.5V) =%.1f mS\n",gm*1000);
diff --git a/2885/CH7/EX7.9/ex7_9.sce b/2885/CH7/EX7.9/ex7_9.sce
new file mode 100755
index 000000000..89475659a
--- /dev/null
+++ b/2885/CH7/EX7.9/ex7_9.sce
@@ -0,0 +1,21 @@
+//Find the output signal voltage of the amplifier
+clear;
+clc;
+//soltion
+//given
+
+Rd=12*10^3;//ohm
+Rg=1*10^6;//ohm
+Rs=1*10^3;//ohm
+Cs=25*10^-6;//F
+u=80; //amplification factor
+rd=200*10^3;//ohm
+Vi=0.1;//V
+f=1*10^3;//Hz //input frequency
+Xcs=1/(2*%pi*f*Cs);
+//This is much smaller than Rs therefore it is bypassed
+
+gm=u/rd;
+Av=gm*(rd*Rd/(rd+Rd));
+Vo=Av*Vi;
+printf("The output voltage is %.3f V",Vo);
diff --git a/2885/CH8/EX8.1/ex8_1.sce b/2885/CH8/EX8.1/ex8_1.sce
new file mode 100755
index 000000000..129bb02dd
--- /dev/null
+++ b/2885/CH8/EX8.1/ex8_1.sce
@@ -0,0 +1,25 @@
+//Express the gain in decibel
+clear;
+clc;
+//soltion
+//given
+
+//Powere gain of 1000
+Pg1=1000;
+Pgd1=10*log10(Pg1);
+printf("Power gain (in dB)= %.0f dB\n",Pgd1);
+
+//Voltage gain of 1000
+Vg1=1000;
+Vgd1=20*log10(Vg1);
+printf("Voltage gain (in dB)= %.0f dB\n",Vgd1);
+
+//Powere gain of 1/100
+Pg2=1/100;
+Pgd2=10*log10(Pg2);
+printf("Power gain (in dB)= %.0f dB\n",Pgd2);
+
+//Voltage gain of 1/100
+Vg2=1/100;
+Vgd2=20*log10(Vg2);
+printf("Voltage gain (in dB)= %.0f dB\n",Vgd2);
diff --git a/2885/CH8/EX8.2/ex8_2.sce b/2885/CH8/EX8.2/ex8_2.sce
new file mode 100755
index 000000000..4dc8ec908
--- /dev/null
+++ b/2885/CH8/EX8.2/ex8_2.sce
@@ -0,0 +1,22 @@
+
+//Determine power and voltage gain
+clear;
+clc;
+//soltion
+//given
+
+//For Gain = 10 dB
+G=10;//dB
+Pg1=10^(G/10); //taking antilog
+Vg1=10^(G/20); //taking antilog
+printf("\nFor Gain = %.0f dB",G)
+printf("\nPower gain ratio = %.0f \n",Pg1);
+printf("Voltage gain ratio = %.2f \n",Vg1);
+
+//For Gain 3 dB
+G=3;//dB
+Pg2=10^(G/10); //taking antilog
+Vg2=10^(G/20); //taking antilog
+printf("\nFor Gain = %.0f dB\n",G)
+printf("Power gain ratio = %.0f \n",Pg2);
+printf("Voltage gain ratio = %.3f \n",Vg2);
diff --git a/2885/CH8/EX8.3/ex8_3.sce b/2885/CH8/EX8.3/ex8_3.sce
new file mode 100755
index 000000000..db89fcc9d
--- /dev/null
+++ b/2885/CH8/EX8.3/ex8_3.sce
@@ -0,0 +1,15 @@
+//Calculate the overall voltage gain
+clear;
+clc;
+//soltion
+//given
+
+A1=80
+A2=50
+A3=30
+Ad=20*log10(A1)+20*log10(A2)+20*log10(A3);;
+
+//Alternatively
+A=A1*A2*A3;
+Ad=20*log10(A);
+printf("The Voltage gain is %.2f dB",Ad);
diff --git a/2885/CH8/EX8.4/ex8_4.sce b/2885/CH8/EX8.4/ex8_4.sce
new file mode 100755
index 000000000..eb4b5d9b3
--- /dev/null
+++ b/2885/CH8/EX8.4/ex8_4.sce
@@ -0,0 +1,46 @@
+//Calculate quiescent output voltage and small signal voltage gain
+clear;
+clc;
+//soltion
+//given
+
+//At input Voltage =3V
+Vi1=3;//V //input voltage
+Vbe=0.7;//V
+B=250;
+Vcc=10;//V //Supply
+Re1=1*10^3;//ohm
+Rc1=3*10^3;//ohm
+Re2=2*10^3;//ohm
+Rc2=4*10^3;//ohm
+Vb1=Vi1; //Voltage at the base of transistor T1
+Ve1=Vb1-Vbe; //Voltage at the emitter of transistor T1
+Ie1=Ve1/Re1;
+Ic1=Ie1;
+Vc1=Vcc-Ic1*Rc1;
+Vb2=Vc1;
+Ve2=Vb2-Vbe;
+Ie2=Ve2/Re2;
+Ic2=Ie2;
+Vo1=Vcc-Ic2*Rc2;
+printf("The quiescent output voltage(At input Voltage =3 V ) is %.1f V\n",Vo1);
+
+//At input Voltage =3.2 V
+Vi2=3.2;//V //input voltage
+Vb1=Vi2; //Voltage at the base of transistor T1
+Ve1=Vb1-Vbe; //Voltage at the emitter of transistor T1
+Ie1=Ve1/Re1;
+Ic1=Ie1;
+Vc1=Vcc-Ic1*Rc1;
+Vb2=Vc1;
+Ve2=Vb2-Vbe;
+Ie2=Ve2/Re2;
+Ic2=Ie2;
+Vo2=Vcc-Ic2*Rc2;
+printf("The quiescent output voltage (At input Voltage =3.2 V) is %.1f V\n",Vo2);
+
+//Small Signal input and output voltage
+vi=Vi2-Vi1;
+vo=Vo2-Vo1;
+Av=vo/vi;
+printf("The small signal voltage gain is %.0f ",Av)
diff --git a/2885/CH8/EX8.5/ex8_5.sce b/2885/CH8/EX8.5/ex8_5.sce
new file mode 100755
index 000000000..c5c7a1a51
--- /dev/null
+++ b/2885/CH8/EX8.5/ex8_5.sce
@@ -0,0 +1,36 @@
+//Calculate the maximum voltage gain and bandwidth of multistage amplifier
+clear;
+clc;
+//soltion
+//FUNCTIONS
+
+function [z]=prll(r1,r2)//Function for the parallel combination of resistor
+ z=r1*r2/(r1+r2);
+endfunction
+
+//given
+rin=10*10^6;//ohm //input resistance of JFET
+Rd=10*10^3;//ohm
+Rs=500;//ohm
+Rg=470*10^3;//ohm
+Rl=470*10^3;//ohm
+Cc=0.01*10^-6;//Farad
+Csh=100*10^-12;//Farad
+Cs=50*10^-6;//Farad
+rd=100*10^3;//ohm
+gm=2*10^-3;//S
+Rac2=prll(Rd,Rl);
+Rac1=prll(Rd,Rg);
+Req=prll(rd,prll(Rd,Rl));
+Am=ceil(gm*Req);
+Am2=Am*Am; //Voltage gain of two stage amplifier
+printf("Voltage gain of two stage amplifier= %.0f\n",Am2);
+R_=prll(rd,Rd)+prll(Rg,rin);
+f1=1/(2*%pi*Cc*R_); //lower cutoff frequency
+f1_=f1/(sqrt(sqrt(2)-1));
+f2=1/(2*%pi*Csh*Req); //upper cutoff frequency
+f2_=f2*(sqrt(sqrt(2)-1));
+BW=f2_-f1_;
+printf("Bandwidth= %.1f kHz",BW/1000);
+
+//There is a slight error in f1 due to use of R'(here R_)=479 kΩ and in f2 due to approaximation of Req there is a slight variation
diff --git a/2885/CH8/EX8.6/ex8_6.sce b/2885/CH8/EX8.6/ex8_6.sce
new file mode 100755
index 000000000..3a0c76495
--- /dev/null
+++ b/2885/CH8/EX8.6/ex8_6.sce
@@ -0,0 +1,13 @@
+//Calculate the midband voltage gain and bandwidth of cascade amplifier
+clear;
+clc;
+//soltion
+//given
+Am=8; //midband voltage gain of individual MOSFET
+BW=500*10^3//Hz
+f2=BW;
+n=4;
+A2m=Am^n;
+f2_=f2*(sqrt((2^(1/n))-1));
+printf("Midband voltage gain = %.0f\n",A2m);
+printf("Overall Bandwidth= %.1f kHz",f2_/1000);
diff --git a/2885/CH8/EX8.7/ex8_7.sce b/2885/CH8/EX8.7/ex8_7.sce
new file mode 100755
index 000000000..4b6aa60b0
--- /dev/null
+++ b/2885/CH8/EX8.7/ex8_7.sce
@@ -0,0 +1,26 @@
+//Calculate the input and output impedance and voltage gain
+clear;
+clc;
+//soltion
+//FUNCTIONS
+
+function [z]=prll(r1,r2)//Function for the parallel combination of resistor
+ z=r1*r2/(r1+r2);
+endfunction
+
+hie=1.1*10^3;//ohm = rin
+hfe=120;// = B
+
+//the values of Rac2, Zi, Zo are as per diagram
+Rac2=prll(3.3*10^3,2.2*10^3);
+Rac1=prll(6.8*10^3,prll(56*10^3,prll(5.6*10^3,1.1*10^3)));
+Zi=prll(5.6*10^3,prll(56*10^3,1.1*10^3));
+Zo=prll(3.3*10^3,2.2*10^3);
+
+printf("Input Resistance = %.3f kΩ\nOutput Resistance = %.2f kΩ\n",Zi/1000,Zo/1000);
+
+Am2=-hfe*Rac2/(hie);
+Am1=-hfe*Rac1/(hie);
+Am=Am1*Am2;
+Am=20*log10(Am);
+printf("The Overall Voltage gain is %.2f dB",Am);
diff --git a/2885/CH9/EX9.1/ex9_1.sce b/2885/CH9/EX9.1/ex9_1.sce
new file mode 100755
index 000000000..e3441ee96
--- /dev/null
+++ b/2885/CH9/EX9.1/ex9_1.sce
@@ -0,0 +1,10 @@
+//Determine the turns ratio of the transformer
+clear;
+clc;
+//soltion
+//given
+
+Rl=8;//ohm
+Rl_=5*10^3;//ohm
+TR=sqrt(Rl_/Rl); //Turns ratio
+printf("Turns Ratio= %.0f : 1",TR);
diff --git a/2885/CH9/EX9.2/ex9_2.sce b/2885/CH9/EX9.2/ex9_2.sce
new file mode 100755
index 000000000..e3f23b40c
--- /dev/null
+++ b/2885/CH9/EX9.2/ex9_2.sce
@@ -0,0 +1,10 @@
+//Determine the output impedance of the transistor
+clear;
+clc;
+//soltion
+//given
+
+TR=16/1; //turn ratio
+Rl=4;//ohm //loudspeaker impedance
+ro=(TR^2)*Rl;
+printf("The output impedance of the transistor %.0f Ω",ro);
diff --git a/2885/CH9/EX9.3/ex9_3.sce b/2885/CH9/EX9.3/ex9_3.sce
new file mode 100755
index 000000000..5fbe4e192
--- /dev/null
+++ b/2885/CH9/EX9.3/ex9_3.sce
@@ -0,0 +1,29 @@
+
+//Determine the efficiency of a single ended transformer
+clear;
+clc;
+//soltion
+//given
+
+Vceq=10;//V //supply voltage
+
+//At Vp=10V
+Vp=10;//V
+Vce_max1=Vceq+Vp;
+Vce_min1=Vceq-Vp;
+n1=50*((Vce_max1-Vce_min1)/(Vce_max1+Vce_min1))^2;
+printf("Efficiency (At Vp = 10V)= %.0f percent\n",n1);
+
+//At Vp=5V
+Vp=5;//V
+Vce_max2=Vceq+Vp;
+Vce_min2=Vceq-Vp;
+n2=50*((Vce_max2-Vce_min2)/(Vce_max2+Vce_min2))^2;
+printf("Efficiency (At Vp = 5V)= %.1f percent\n",n2);
+
+//At Vp=1V
+Vp=1;//V
+Vce_max3=Vceq+Vp;
+Vce_min3=Vceq-Vp;
+n3=50*((Vce_max3-Vce_min3)/(Vce_max3+Vce_min3))^2;
+printf("Efficiency (At Vp = 1V)= %.1f percent\n",n3);
diff --git a/2885/CH9/EX9.4/ex9_4.sce b/2885/CH9/EX9.4/ex9_4.sce
new file mode 100755
index 000000000..6d289c378
--- /dev/null
+++ b/2885/CH9/EX9.4/ex9_4.sce
@@ -0,0 +1,18 @@
+//Determine input and output power and efficiency
+clear;
+clc;
+//soltion
+//given
+
+Vcc=20;//V //supply voltage
+Rl=4;//Ω
+Vp=15;//V
+Ip=Vp/Rl;
+Idc=Ip/%pi;
+Pi=Vcc*Idc;
+Po=((Vp/2)^2)/Rl;
+n=100*Po/Pi;
+printf("Input power %.2f W\n",Pi);
+printf("Output power %.2f W\n",Po);
+printf("Efficiency = %.0f percent\n",n);
+
diff --git a/2885/CH9/EX9.5/ex9_5.sce b/2885/CH9/EX9.5/ex9_5.sce
new file mode 100755
index 000000000..76f41f71d
--- /dev/null
+++ b/2885/CH9/EX9.5/ex9_5.sce
@@ -0,0 +1,13 @@
+//Calculate the percentage increase in output power
+clear;
+clc;
+//soltion
+//given
+
+D=0.2;//harmonic distortion
+P=(1+D^2);//Total power increase
+
+//percent increase= (Pi*(1+D^2)-Pi)*100/Pi;
+//taking out and cancelling Pi
+PI=(P-1)*100;
+printf("The percentage increase in output power= %.0f percent",PI);
diff --git a/2885/CH9/EX9.6/ex9_6.sce b/2885/CH9/EX9.6/ex9_6.sce
new file mode 100755
index 000000000..5f299e49f
--- /dev/null
+++ b/2885/CH9/EX9.6/ex9_6.sce
@@ -0,0 +1,23 @@
+//Calculate harmonic distortion and percentage increase in output voltage due to this
+clear;
+clc;
+//soltion
+//given
+
+I1=60;//A
+I2=6;//A
+I3=1.2;//A
+I4=0.6;//A
+D2=I2/I1;
+D3=I3/I1;
+D4=I4/I1;
+printf("The Harmonic distortion of each component\nD2= %.0f percent\nD3= %.0f percent\nD4= %.0f percent\n",D2*100,D3*100,D4*100);
+
+D=sqrt((D2)^2+(D3)^2+(D4)^2);
+printf("The Total Harmonic distortion = %.0f percent\n",D*100);
+P=(1+D^2);//Total power increase
+
+//percent increase= (Pi*(1+D^2)-Pi)*100/Pi;
+//taking out and cancelling Pi
+PI=(P-1)*100;
+printf("The percentage increase in output power= %.0f percent",PI);