Your task today is to write a program that sorts a list of numbers in ascending or descending order. Sorting is a fundamental operation in programming and is used extensively in data analysis, search algorithms, and more.
For example:
[8, 3, 1, 7, 4]
[1, 3, 4, 7, 8]
[8, 7, 4, 3, 1]
This challenge will help you understand how sorting works and introduce you to built-in sorting methods or manual sorting algorithms.
Sorting has many applications in programming:
There are two main approaches to solve this problem:
sort()
in Python or Arrays.sort()
in Java).# Get input from the user
numbers = input("Enter numbers separated by spaces: ").split()
# Convert input to a list of integers
numbers = [int(num) for num in numbers]
# Sort in ascending order
ascending = sorted(numbers)
# Sort in descending order
descending = sorted(numbers, reverse=True)
# Output the results
print("Ascending order:", ascending)
print("Descending order:", descending)
# Get input from the user
numbers = input("Enter numbers separated by spaces: ").split()
# Convert input to a list of integers
numbers = [int(num) for num in numbers]
# Bubble sort for ascending order
for i in range(len(numbers)):
for j in range(0, len(numbers) - i - 1):
if numbers[j] > numbers[j + 1]:
numbers[j], numbers[j + 1] = numbers[j + 1], numbers[j]
# Output the sorted list
print("Ascending order:", numbers)
# Reverse for descending order
numbers.reverse()
print("Descending order:", numbers)
import java.util.Arrays;
import java.util.Collections;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// Get input from the user
System.out.print("Enter numbers separated by spaces: ");
String[] input = scanner.nextLine().split(" ");
// Convert input to an array of integers
Integer[] numbers = new Integer[input.length];
for (int i = 0; i < input.length; i++) {
numbers[i] = Integer.parseInt(input[i]);
}
// Sort in ascending order
Arrays.sort(numbers);
System.out.println("Ascending order: " + Arrays.toString(numbers));
// Sort in descending order
Arrays.sort(numbers, Collections.reverseOrder());
System.out.println("Descending order: " + Arrays.toString(numbers));
}
}
javaKopierenBearbeitenimport java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// Get input from the user
System.out.print("Enter numbers separated by spaces: ");
String[] input = scanner.nextLine().split(" ");
// Convert input to an array of integers
int[] numbers = new int[input.length];
for (int i = 0; i < input.length; i++) {
numbers[i] = Integer.parseInt(input[i]);
}
// Bubble sort for ascending order
for (int i = 0; i < numbers.length - 1; i++) {
for (int j = 0; j < numbers.length - 1 - i; j++) {
if (numbers[j] > numbers[j + 1]) {
int temp = numbers[j];
numbers[j] = numbers[j + 1];
numbers[j + 1] = temp;
}
}
}
// Print the sorted list in ascending order
System.out.print("Ascending order: ");
for (int num : numbers) {
System.out.print(num + " ");
}
// Print the sorted list in descending order
System.out.print("\nDescending order: ");
for (int i = numbers.length - 1; i >= 0; i--) {
System.out.print(numbers[i] + " ");
}
}
}
// Get input from the user
let input = prompt("Enter numbers separated by spaces:");
let numbers = input.split(" ").map(Number);
// Sort in ascending order
let ascending = [...numbers].sort((a, b) => a - b);
// Sort in descending order
let descending = [...numbers].sort((a, b) => b - a);
console.log("Ascending order:", ascending);
console.log("Descending order:", descending);
// Get input from the user
let input = prompt("Enter numbers separated by spaces:");
let numbers = input.split(" ").map(Number);
// Bubble sort for ascending order
for (let i = 0; i < numbers.length; i++) {
for (let j = 0; j < numbers.length - i - 1; j++) {
if (numbers[j] > numbers[j + 1]) {
let temp = numbers[j];
numbers[j] = numbers[j + 1];
numbers[j + 1] = temp;
}
}
}
console.log("Ascending order:", numbers);
// Reverse for descending order
console.log("Descending order:", numbers.reverse());
In Day 17: Word Frequency Counter, you’ll take a deep dive into text data and learn how to count the occurrence of each word in a sentence. It’s an excellent exercise for string manipulation and working with dictionaries or maps!