Chương trình tính momen trên dầm đơn chịu lực phân bố đều và phân bố bậc nhất bằng c Chương trình tính momen trên dầm đơn chịu lực phân bố đều và phân bố bậc nhất bằng c code Chương trình tính momen trên dầm đơn chịu lực phân bố đều và phân bố bậc nhất bằng c
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace SaiPhan { class Program { static void Main(string[] args) { display(); } static void display() { int n; string s; { Console.WriteLine(" "); Console.WriteLine("1.Tính mômen dầm đơn chịu lực q phân bố đều"); Console.WriteLine("2.Tính mômen dầm đơn chịu tải phân bố bậc nhất"); Console.WriteLine(" "); Console.WriteLine("Nhấn phím để thoát (Ngoại trừ phím '1' & '2')"); s=Console.ReadLine(); try { n = Convert.ToInt32(s); } catch { n = 0; }; switch (n) { case 1: pbDeu(); break; case 2: pbBacNhat(); break; } } while (n!=0); } static void pbDeu() { int n; double q, l,delta; string s; Console.WriteLine("Nhập lực phân bố: q = "); s = Console.ReadLine(); q = Convert.ToInt32(s); Console.WriteLine("Nhập chiều dài nhịp: l = "); s = Console.ReadLine(); l = Convert.ToInt32(s); Console.WriteLine("Nhập số điểm chia lưới: n = "); s = Console.ReadLine(); n = Convert.ToInt32(s); double[] m = new double[n]; double[,] A = new double[n, n]; delta = l/ (n - 1); n ; for (int i = 1; i < n; i++) for (int j = 1; j < n; j++) A[i, j] = 0; for (int i = 1; i < n; i++) { A[i, i - 1] = 1; A[i, i] = -2; A[i, i + 1] = 1; A[i, n] = -q*delta*delta; } matrix(A, n); } static void pbBacNhat() { double q0, q1, q2, l,delta,qmin; int n; string s; Console.WriteLine("Nhập lực phân bố: q1 = "); s = Console.ReadLine(); q1 = Convert.ToDouble(s); Console.WriteLine("Nhập lực phân bố: q2 = "); s = Console.ReadLine(); q2 = Convert.ToDouble(s); Console.WriteLine("Nhập chiều dài nhịp: l = "); s = Console.ReadLine(); l = Convert.ToDouble(s); Console.WriteLine("Nhập số điểm chia lưới: n = "); s = Console.ReadLine(); n = Convert.ToInt32(s); double[] m = new double[n]; double[,] A = new double[n, n]; delta = l / (n - 1); n ; q0 = Math.Abs(q1 - q2); qmin = (q1 < q2 ? q1 : q2); for (int i = 1; i < n; i++) for (int j = 1; j < n; j++) A[i, j] = 0; for (int i = 1; i < n; i++) { A[i, i - 1] = 1; A[i, i] = -2; A[i, i + 1] = 1; A[i, n] = -1.0*(q0/4 *i+qmin)* delta * delta; } matrix(A, n); } static void matrix(double[,] a,int m) { double p,Q; double [] x= new double[m+1]; for(int i=1;i ... l,delta,qmin; int n; string s; Console.WriteLine("Nhập lực phân bố: q1 = "); s = Console.ReadLine(); q1 = Convert.ToDouble(s); Console.WriteLine("Nhập lực phân bố: q2 = "); s = Console.ReadLine(); q2 = Convert.ToDouble(s);