Using System;
namespace Fractions{ public struct Fraction : IComparable<Fraction> { public Fraction(int numerator, int denominator) { Numerator = numerator; Denominator = denominator; }
public int Numerator; public int Denominator;
public int CompareTo(Fraction other) { return (Numerator * other.Denominator).CompareTo(other.Numerator * Denominator); } }
public class Program { static void Main(string[] args) { int numerator, denominator;
Console.Write("Числитель первой дроби "); numerator = int.Parse(Console.ReadLine()); Console.Write("Знаменатель первой дроби "); denominator = int.Parse(Console.ReadLine()); var fraction1 = new Fraction(numerator, denominator);
Console.Write("Числитель второй дроби "); numerator = int.Parse(Console.ReadLine()); Console.Write("Знаменатель второй дроби "); denominator = int.Parse(Console.ReadLine()); var fraction2 = new Fraction(numerator, denominator);
var compareResult = fraction1.CompareTo(fraction2); if (compareResult < 0) Console.WriteLine("<"); else if (compareResult > 0) Console.WriteLine(">"); else // = 0 Console.WriteLine("="); } }}
Program spiski;
type
ListElement = ^TListElement;
TListElement = record
Data: integer;
Next, Previous: ListElement;
end;
var
first, current, last: ListElement;
i: integer;
procedure Delete(var element: ListElement);
var
x: ListElement;
begin
while element <> nil do
begin
if (element^.Data = 0) and (element^.Next <> nil) then begin
x := element^.Next; {следующий элемент который надо удалить}
{сшиваем дырку которая образуется после удаления х}
element^.Next := x^.Next;
if (x^.Next <> nil) then
x^.Next^.Previous := element;
Dispose(x);
end;
element := element^.Next;
end;
end;
procedure Print(first: ListElement);
begin
if first = nil then
begin
writeln('Список пуст.');
exit;
end;
while first <> nil do
begin
Write(first^.Data, ' ');
first := first^.Next
end;
writeln;
end;
begin
for i := 1 to 11 do
begin
if first = nil then
begin
new(first);
first^.Next := nil;
first^.Previous := nil;
last := first;
end
else
begin
new(last^.Next);
last^.Next^.Previous := last;
last := last^.Next;
last^.Next := nil;
end;
last^.Data := random(8 + 5) - 5;
end;
current := first;
Print(first);
Delete(current);
Print(first);
end.
4. Буфер обміну, зокрема, дуже корисна функція, адже набирати те саме речення по 3-4 рази втомлює та дратує водночас. З ним легко ввести одні й ті ж самі слова, наприклад, в таблиці, замість того, щоб набирати його вручну. Він корисний, коли потрібно розіслати оголошення в соц. мережі кільком друзям, аніж нервуватись над написанням кожного оголошення.
Вибачайте, але 5 я не зможу зробити, але хоча би з цим допомогла.
По логике:
Ветер гуляет по морю
Ветер подгоняет кораблик