30/09/2018, 16:38

Tìm một số trong mảng 2 chiều c#

Tìm một số , nếu có thì trả về true , ko có thì false . Em viết hàm thế này nhưng kết quả ko như ý , mong mọi người giúp đỡ

 bool timkiem(int[,]iMaTran,int m ,int n)
        {
               Console.Write("Nhap phan tu can tim kiem trong mang: ");
             k = int.Parse(Console.ReadLine());
             for (int i = 1; i <= m; i++)
             {
                 for (int j = 1; j <= n; j++)
                 {
                     if (iMaTran[i, j] == k)
                         return true;
                 }
             }
                return false;
        }
X viết 18:50 ngày 30/09/2018

Up hết code lên kiểm tra dễ hơn nha bạn mà mới nhìn vào thấy cho nhập k ngay trog hàm KT là không hay rồi

Lê Huy viết 18:48 ngày 30/09/2018

ý anh là nhập k ở hàm main à

Tuấn Nguyễn viết 18:48 ngày 30/09/2018

Em nên truyền biến k ở hàm main vào hàm. Như vậy hàm sẽ có tính tái sử dụng cao hơn.
Code em thấy ko sai nhé. Em post hết đoạn nào liên quan đến hàm này lên để mọi người cùng xem.

Lê Huy viết 18:47 ngày 30/09/2018

đây a

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Bai2
{
    class Bai2
    {
        static public int[,] iMaTran = new int[100, 100];
        static public int n, m;
        public int k;
        void nhapmatran(int[,] iMaTran, int m, int n)
        {
            Console.Write("Nhap so dong:");
            m = int.Parse(Console.ReadLine());
            Console.Write("Nhap so cot:");
            n = int.Parse(Console.ReadLine());
            Console.WriteLine("Nhap ma tran:");
            for (int i = 1; i <= m; i++)
            {
                for (int j = 1; j <= n; j++)
                {
                    Console.Write("Nhap phan tu dong {0} ,cot {1} :", i, j);
                    iMaTran[i, j] = int.Parse(Console.ReadLine());
                }
                Console.WriteLine();
            }
            Console.WriteLine("Ma Tran vua nhap:");
            for (int i = 1; i <= n; i++)
            {
                for (int j = 1; j <= m; j++)
                    Console.Write(+iMaTran[i, j] + "  ");
                Console.WriteLine();
            }

        }
       public void XuatMaTran( int[,] iMaTran,  int n,  int m)
        {
            for (int i = 1; i <=n; i++)
            {
                for (int j = 1; j <= m; j++)
                    Console.Write(+iMaTran[i, j] + "  ");
                Console.WriteLine();
            }
        }
        bool timkiem(int[,] iMaTran, int m, int n)
        {
            Console.Write("Nhap phan tu can tim kiem trong mang: ");
            k = int.Parse(Console.ReadLine());
            for (int i = 1; i <= m; i++)
            {
                for (int j = 1; j <= n; j++)
                {
                    if (iMaTran[i, j] == k)
                        return true;
                }
            }
            return false;
        }
        static void Main(string[] args)
        {
            int[,] iMaTran;
            iMaTran = new int[100, 100];
            Bai2 test = new Bai2();
            test.nhapmatran(iMaTran, m, n);
          
            if (test.timkiem(iMaTran, m, n) == true)
                Console.Write("Co phan tu  trong mang ");
            else
                Console.Write("ko co phan tu trong mang ");
            Console.ReadLine();
        }
    }
}
Lê Đình Huy viết 18:54 ngày 30/09/2018

Cách chèn code cho dễ nhìn :

Làm sao để có thể hiển thị syntax highlighting bằng markdown? Các bạn phải đánh dấu ``` như ví dụ dưới đây Chú ý, dấu ``` được tạo ra bởi nút nằm bên trái số 1 trên bàn phím, nút này sẽ là ~ khi bấm giữ Shift Ví dụ cho C Nội dung: ``` void main() { } ``` Và đừng quên ``` ở cuối Kết quả void main() { } Ví dụ cho Pascal Nội dung: ``` Program HelloWorld; Begin WriteLn('Hello world!') {no ";" is required after the last statement of a block - adding one adds a "null stateme…

X viết 18:53 ngày 30/09/2018

static public int[,] iMaTran = new int[100, 100];

bỏ

void nhapmatran(int[,] iMaTran, int m, int n)

void nhapmatran(int[,] iMaTran)

[quote=“Le_Huy, post:5, topic:4805”]
test.nhapmatran(iMaTran, m, n);
[/quote] test.nhapmatran(iMaTran);

Bài liên quan
0