0 / 0 / 0
Регистрация: 13.12.2010
Сообщений: 9
1

Массивы

14.02.2011, 17:04. Показов 756. Ответов 4
Метки нет (Все метки)

Недавно начал изучать СИ. Никак не получаются массивы. Есть код программы в паскале, переведите плз в СИ
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var i,n,max,c:integer;
a:array[1..1000] of integer;
begin
max:=-16000;
 read(n);
 c:=0;
  for i:=1 to n do
  begin
   read(a[i]);
    if a[i]>max then max:=a[i];
    end;
   for i:=1 to n do
    if a[i]=max then Inc(c);
  write(c,' ');
  end.
И текст задачи:
Дан одномерный массив.
Подсчитайте, сколько раз встречается в этой таблице максимальное по величине число.

Входные данные
В первой строке ввести количество элементов в одномерном массива N (1<=N<=1000).
Во второй строке ввести N чисел в диапазоне от -16000 до 16000.

Выходные данные
Вывести одно число - количество максимальных по величине число.

Пример входных данных
10
10 1 2 3 4 5 6 7 8 10
Пример выходных данных
2
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.02.2011, 17:04
Ответы с готовыми решениями:

Циклические массивы.одномерные массивы
дан массив действительных чисел. среди них есть равные. найти первый максимальный элемент массива и...

Массивы структур и массивы строк
помогите решить кто нибудь пожалуйста(л1з6)

Массивы структур и массивы строк
Постановка задачи 1.Сформировать динамический массив из элементов структурного типа. Структурный...

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

4
Почетный модератор
7386 / 2632 / 280
Регистрация: 29.07.2006
Сообщений: 13,696
14.02.2011, 17:43 2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    int *a, len, max, count=0, i;
    scanf("%d", &len);
    a = (int*)malloc(len*sizeof(int));
    max = -16000;
    for(i=0;i<len;++i)
    {
        scanf("%d", a+i);
        if(max < *(a+i))
        {
            max = *(a+i);
            count = 1;
            continue;
        }
        else if(max == *(a+i))
            count++;
    }
    printf("Max: %d, count: %d\n", max, count);
1
0 / 0 / 0
Регистрация: 13.12.2010
Сообщений: 9
14.02.2011, 18:11  [ТС] 3
Очень много компиляционных ошибок(
посмотри, где тут ошибка
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include<stdio.h>
#include<conio.h>
void main()
{
int a[1000];
int i,n,p,c;
 scanf("%d",&n);
 p=0;
 c=1;
  for (i=1; i<=n; i++)
  {scanf("%d",&a[i]); if (a[i]=c) p=p+1;}
    printf("%d",p);
      }
Вот эта же задача, но в паскале
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
var i,n,p:integer;
a:array[1..1000] of integer;
begin
 readln(n);
 p:=0;
  for i:=1 to n do
  begin
   read(a[i]);
    if a[i]=1 then Inc(p);
    end;
  writeln(p,' ');
  end.
Дан одномерный массив.
Подсчитайте, сколько раз в нем встречается число 1.

Входные данные
В первой строке ввести количество элементов в одномерном массива N (1<=N<=1000).
Во второй строке ввести N чисел в диапазоне от -1 до 1.

Выходные данные
Вывести одно число - количество единиц в одномерном массиве.

Пример входных данных
10
0 1 0 1 0 -1 0 1 0 1
Пример выходных данных
4
0
Почетный модератор
7386 / 2632 / 280
Регистрация: 29.07.2006
Сообщений: 13,696
14.02.2011, 20:16 4
Цитата Сообщение от Hrust Посмотреть сообщение
Очень много компиляционных ошибок(
потому что надо хоть чуть-чуть думать и включить хидеры с главной функцией. Хотя для этого даже думать не надо.
0
Модератор
Эксперт по электронике
8729 / 6522 / 884
Регистрация: 14.02.2011
Сообщений: 22,824
15.02.2011, 02:56 5
C++
1
2
for (i=1; i<=n; i++)
  {scanf("%d",&a[i])
Pascal
1
2
3
for i:=1 to n do
  begin
   read(a[i]);
А разве в паскале массивы с 1 начинаются????
По поводу твоего кода (обоих)
а что будет если я введу число 1000
а 100000
А будет выход за пределы массива и кирдык
проверить надо значения!
и почему у тебя паскальный код такой аккуратный а С как .......
не будешь правильно оформлять никогда не найдешь ошибки
С уважением Валерий
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.02.2011, 02:56
Помогаю со студенческими работами здесь

Массивы структур и массивы строк
помогите пожалуйста сделать лабораторную работу очень срочно нужно! буду очень благодарен !

Даны массивы а и b. Получить новые массивы a и b, элементы которых вычисляются по правилу: ai=bi, bi= -ai
Даны массивы а и b, состоящие из n-элементов каждый. Получить новые массивы a и b, элементы...

Даны массивы A(8), F(8),Q(8). Сформировать массивы С(8), каждый элемент которого вычисляется по формуле
uses crt; type mas=array of integer; var A,F,Q,C:mas; i,s:integer; begin clrscr; ...

Упорядочить массивы по по убыванию, потом соединить массивы в один упорядоченный массив
Начала писать, запуталась Даны два одномерных массива состоящие из 10 целых чисел. Упорядочить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru