Bài tập 4 - C# Console

Bài tập 4 - C# Console

Câu 4: Viết chương trình thực hiện các công việc sau
a. Cho phép nhập n số thực (n>0)
b. Xuất mảng vừa nhập
c. Nhập x, thêm x vào đầu mảng

d. Nhập x, vị trí k (0<=k<n), thêm x vào vị trí k vừa nhập
e. Nhập vị trí k (0<=k<n), in phần tử tại vị trí k
f. Nhập vị trí k (0<=k<n), xoá phần tử tại vị trí k
g. Xoá phần tử đầu mảng
h. Nhập x, xoá phần tử x đầu tiên trong mảng
i. Nhập x, xoá tất cả x trong mảng
j. Sắp xếp mảng tăng dần
k. Sắp xếp mảng giảm dần

Gợi ý giải:

using System;
using System.Collections.Generic;

using System.Linq;

using System.Text;

namespace Bai_tap_4

{

class Program

{

//Cau 4: Viet chuong trinh thuc hien cac cong viec sau

//a. Cho phep nhap n so thuc (n>0)

//b. Xuat mang vua nhap

//c. Nhap x, them x vao dau mang

//d. Nhap x, vi tri k (0<=k<n), them x vao vi tri k vua nhap

//e. Nhap vi tri k (0<=k<n), in phan tu tai vi tri k

//f. Nhap vi tri k (0<=k<n), xoa phan tu tai vi tri k

//g. Xoa phan tu dau mang

//h. Nhap x, xoa phan tu x dau tien trong mang

//i. Nhap x, xoa tat ca x trong mang

//j. Sap xep mang tang dan

//k. Sap xep mang giam dan

//Ham nhap mang

public void setArray(ref int n, ref float[] a)

{

do

{

Console.Write("Nhap n (n > 0): ");

n = int.Parse(Console.ReadLine());

} while (n <= 0);

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

{

Console.Write("Nhap a[{0}]: ", i);

a[i] = float.Parse(Console.ReadLine().ToString());

}

}

//Ham in tat ca cac phan tu trong mang

public void print(float[] a, int n)

{

Console.WriteLine("Day so vua nhap:");

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

{

Console.Write("{0}\t", a[i]);

}

}

//Ham them 1 phan tu vao dau mang

public void insertFirst(ref float[] a, ref int n, float x)

{

for (int i = n; i > 0; i--)

{

a[i] = a[i - 1];

}

a[0] = x;

n++;

}

//Ham chen 1 phan tu vao dung vi tri

public void insertAt(ref float[] a, ref int n, float x, int k)

{

if (k == 0)

{

insertFirst(ref a, ref n, x);

}

else

{

if (k == n)

{

a[n] = x;

}

else

{

for (int i = n; i > k; i--)

{

a[i] = a[i - 1];

}

a[k] = x;

}

n++;

}

}

//Ham xoa 1 phan tu cuoi cua mang

public void removeLast(float[] a, ref int n)

{

if (n == 0) return;

n--;

}

//Ham xoa 1 phan tu dau cua mang

public void removeFirst(ref float[] a, ref int n)

{

if (n == 0) return;

for (int i = 0; i < n - 1; i++)

{

a[i] = a[i + 1];

}

n--;

}

//Ham xoa mot phan tu tai vi tri k

public void removeAt(ref float[] a, ref int n, int k)

{

if (k < 0 || k >= n) return;

if (k == 0)

{

removeFirst(ref a, ref n);

}

else

{

if (k == n - 1) { removeLast(a, ref n); }

else

{

for (int i = k; i < n - 1; i++)

{

a[i] = a[i + 1];

}

n--;

}

}

}

//Ham lay ra chi so dau tien cua x trong mang

public int getFirstPos(float[] a, int n, float x)

{

int result = -1;

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

{

if (a[i] == x) return i;

}

return result;

}

//Ham xoa x dua vao vi tri xuat hien dau tien cua x

public void remove(ref float[] a, ref int n, float x)

{

int pos = getFirstPos(a, n, x);

removeAt(ref a, ref n, pos);

}

//Ham xoa tat ca x trong mang

public void removeAll(ref float[] a, ref int n, float x)

{

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

{

remove(ref a, ref n, x);

}

}

//Ham hoan vi hai so a,b

public void swap(ref float a, ref float b)

{

float tmp = a;

a = b;

b = tmp;

}

//Ham sap mang tang dan

public void ascSort(ref float[] a, int n)

{

for (int i = 0; i < n - 1; i++)

{

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

{

if (a[i] > a[j]) swap(ref a[i], ref a[j]);

}

}

}

//Ham sap mang giam dan

public void descSort(ref float[] a, int n)

{

for (int i = 0; i < n - 1; i++)

{

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

{

if (a[i] < a[j]) swap(ref a[i], ref a[j]);

}

}

}

static void Main(string[] args)

{

Program p = new Program();

//a. Cho phep nhap n so thuc (n>0)

int n = 0;

float[] a = new float[100];

p.setArray(ref n, ref a);

//b. Xuat mang so nguyen vua nhap

p.print(a, n);

//c. Nhap x, them x vao dau mang

Console.WriteLine("\nNhap x, them x vao dau mang");

float x;

Console.Write("Nhap x: ");

x = int.Parse(Console.ReadLine());

p.insertFirst(ref a, ref n, x);

p.print(a, n);

//d. Nhap x, vi tri k (0<=k<n), them x vao vi tri k vua nhap

Console.WriteLine("\nNhap x, vi tri k (0<=k<n), them x vao vi tri k vua nhap");

Console.Write("Nhap x: ");

x = float.Parse(Console.ReadLine());

int k;

do

{

Console.Write("Nhap k: ");

k = int.Parse(Console.ReadLine());

} while (k < 0 || k >= n);

p.insertAt(ref a, ref n, x, k);

p.print(a, n);

//e. Nhap vi tri k (0<=k<n), in phan tu tai vi tri k

Console.WriteLine("\nNhap vi tri k (0<=k<n), in phan tu tai vi tri k");

do

{

Console.Write("Nhap k: ");

k = int.Parse(Console.ReadLine());

} while (k < 0 || k >= n);

Console.WriteLine("So can tim o vi tri {0} la: {1}", k, a[k]);

//f. Nhap vi tri k (0<=k<n), xoa phan tu tai vi tri k

Console.WriteLine("\nNhap vi tri k (0<=k<n), xoa phan tu tai vi tri k");

do

{

Console.Write("Nhap k: ");

k = int.Parse(Console.ReadLine());

} while (k < 0 || k >= n);

p.removeAt(ref a, ref n, k);

p.print(a, n);

//g. Xoa phan tu dau mang

Console.WriteLine("\nXoa phan tu dau mang");

p.removeFirst(ref a, ref n);

p.print(a, n);

//h. Nhap x, xoa phan tu x dau tien trong mang

Console.WriteLine("\nNhap x, xoa phan tu x dau tien trong mang");

Console.Write("Nhap x: ");

x = float.Parse(Console.ReadLine());

p.remove(ref a, ref n, x);

p.print(a, n);

//i. Nhap x, xoa tat ca x trong mang

Console.WriteLine("\nNhap x, xoa tat ca cac phan tu x trong mang");

Console.Write("Nhap x: ");

x = float.Parse(Console.ReadLine());

p.removeAll(ref a, ref n, x);

p.print(a, n);

//j. Sap xep mang tang dan

Console.WriteLine("\nSap xep mang tang dan");

p.ascSort(ref a, n);

p.print(a, n);

//k. Sap xep mang giam dan

Console.WriteLine("\nSap xep mang giam dan");

p.descSort(ref a, n);

p.print(a, n);

//

Console.ReadKey(true);

}

}

}
Bạn thấy bài viết này như thế nào?: 
No votes yet
Ảnh của Binh Tran Thanh

Drupal Consultant

Started my career as a drupal8 developer in EM Solutions . I love learning Web technologies like HTML, CSS, PHP, Jquery Ajax and Drupal backend . Currently working as a drupal backend developer.

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
 Năm 2012 MacBook Pro sẽ được thiết kế lại để giống như MacBook Air?

Năm 2012 MacBook Pro sẽ được thiết kế lại để giống như MacBook Air?

Apple hiện đang có một kế hoạch để thiết kế lại máy tính xách tay MacBook Pro và có thể nó sẽ lấy cảm hứng từ gia đình MacBook Air.

Hướng dẫn tạo Calendar không sử dụng Views trong Drupal 7

Hướng dẫn tạo Calendar không sử dụng Views trong Drupal 7

Recently I needed to create a calendar view of nodes that had a date field (with start/end dates). After researching my options, I came to the conclusion that I had the following choices:

Giới thiệu bình Xịt Côn Trùng AIKxp 600 ml Hương Cam Mosfly

Giới thiệu bình Xịt Côn Trùng AIKxp 600 ml Hương Cam Mosfly

Hương cam thanh mát, chống muỗi hiệu quả nhưng người dùng vẫn cảm thấy thoải mái, dễ chịu

Công ty diệt chuột T&C

 

Diet con trung