Статистика
Всего в нашей базе более 4 327 663 вопросов и 6 445 977 ответов!

Дана программа на языке Паскаль. Переделать её на язык С++ Var n, i, j, t: integer;

10-11 класс

Count, Names: array[1..16] of integer;
Begin
For i := 1 to 16 do
begin
Count[i] := 0;
Names[i] := i;
end;
ReadLn(N); {
Считываем количество голосов}
for i:=1 to N do
begin
ReadLn(t); {
считали очередную пару}
Count[t] := Count[t] + 1;{
подсчитываем её}
end;
{Сортируем массивы
Names и Count в порядке убывания
значений массива
Count}
for i:=16 downto 2 do
for j:=2 to i do if Count[j-1]<Count[j] then
begin
t:=Count[j]; Count[j]:=Count[j-1]; Count[j-1]:=t;
t:=Names[j]; Names[j]:=Names[j-1]; Names[j-1]:=t;
end;
for i:=1 to 16 do
if Count[i] > 0 then
writeLn(Names[i], ' ', Count[i]);
end.

Danjule 18 июня 2014 г., 1:01:45 (9 лет назад)
Рейтинг
+ 0 -
0 Жалоба
+ 0 -
Gushko85
18 июня 2014 г., 2:32:52 (9 лет назад)

Надоело при копировании из блокнота вручную ставить пробелы. Бред.

+ 0 -
Svetikangel
18 июня 2014 г., 4:55:32 (9 лет назад)

#include <iostream>
using namespace std;

int main()
{
    int Count[16],Names[16];
    for (int i=0; i<16; i++)
    {
        Count[i] = 0;
        Names[i] = i + 1;
    }
    int n,t;
    cin >> n;
    for (int i=1; i<=n; i++)
    {
        cin >> t;
        Count[t] = Count[t] + 1;
    }
    for (int i=15; i>0; i--)
        for (int j=1; j<i; j++)
            if (Count[j-1] < Count[j])
            {
                t = Count[j]; Count[j] = Count[j-1]; Count[j-1] = t;
                t = Names[j]; Names[j] = Names[j-1]; Names[j-1] = t;
            }
    for (int i=0; i<16; i++)
        if (Count[i] > 0)
            cout <<Names[i] <<' ' <<Count[i] <<endl;
    return 0;
}
Только при вводе t помни, что индексация массив в С++ начинается с нуля, соответственно последний элемент будет иметь индекс N-1.

Ответить

Другие вопросы из категории

очень срочно Требовалось

написать программу, которая вводит с клавиатуры координаты точки на плоскости
(x, y – действительные числа) и определяет принадлежность точки заштрихованной
области, включая ее границы. Программист торопился и написал программу
неправильно. Вот она:

Читайте также

3. Не используя функцию возведения в квадрат, напишите на языке Паскаль наиболее короткие алгоритмы вычисления а) y=x¹° б)y=x¹⁵ или а) y=x^10

б)y=x^15

Постараться использовать минимальное количество дополнительных переменных.

4. Запишите на языке Паскаль программу циклического обмена значениями трёх переменных a,b,c. Схема циклического обмена: a ← b ← c. Например, если до обмена было: a=1, b=2, c=3, то после обмена должно стать: a=2, b=3, c=1.

1)Вычислить значения функции y=4*x^3-2*x^2+5 для x, изменяющегося от -3 до 1 с шагом 0,1 на языке ПАСКАЛЬ!!СРОЧНОО ЗАВТРА ЭКЗАМЕН РЕБЯЯТКИ!

2)Найти количество всех нечетных чисел на интервале от 11 до 20
3)Найти сумму целых положительных четных чисел на интервале от 1 до 100
4)Найти сумму ряда,общий член которого равен А(х)=1/(3*N-2)*(3*N+1)
5)Дано произвольное число n≤100.Определить количество цифр в числе
ОЧЕНЬ НУЖНО!!НА ЯЗЫКЕ ПАСКАЛЬ!ВЫРУЧАЙТЕ!

1) Напишите пожалуйста программу (на языке BASIC) вычисления по длинам двух сторон треугольника и углу между ними длины третьей стороны и двух других

углов.
2)
Напишите пожалуйста программу (на языке BASIC) для определения подобия:
а) двух прямоугольников по двум смежным сторонам;
б) двух треугольников по трем сторонам.

написать программу на Assembler

добрый вечер, всем. помогите, пожалуйста, написать программу на Ассемблере.

задание:
Создать программу на языке Ассемблер, что позволяет организовать вычисления над элементами массивов

Объединить два массива 8-битных целых чисел со знаком. Сначала элементы второго затем первого.

заранее огромное спасибо всем!



Вы находитесь на странице вопроса "Дана программа на языке Паскаль. Переделать её на язык С++ Var n, i, j, t: integer;", категории "информатика". Данный вопрос относится к разделу "10-11" классов. Здесь вы сможете получить ответ, а также обсудить вопрос с посетителями сайта. Автоматический умный поиск поможет найти похожие вопросы в категории "информатика". Если ваш вопрос отличается или ответы не подходят, вы можете задать новый вопрос, воспользовавшись кнопкой в верхней части сайта.