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

 
Microsoft Launches Xbox App for iPhone

Microsoft Launches Xbox App for iPhone

Microsoft has launched a new Xbox LIVE app for iOS devices including the iPhone and iPad. The app, called My Xbox LIVE, allows users to edit their Xbox profile as well as their friends list, and compare achievements with other users.

CMS Drupal, Drupal Modules, Web Matrix

20 Drupal Modules làm tăng chức năng Website

Drupal is a robust content management system that can do nearly anything you throw at it.

Webmaster nói về top 10 thủ thuật SEO cần tránh

Danh sách và những phân tích 10 thủ thuật mà các Webmaster hay những người làm SEO cần tránh sử dụng khi tối ưu hóa Website cho máy tìm kiếm.

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

 

Diet con trung