Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.12.2010, 15:42   #1
boog
 
Регистрация: 22.12.2010
Сообщений: 3
По умолчанию Матрица Min-Max и Max-Min

Добрый день, пишу на делфи, тут возник такой вопрос, как написать задачу только на чистом C:
Дана матрица там 3х3 или другая, ввести числа в нее. Далее программа должна вывести все такие числа и их расположение в матрице(массиве), которые отвечают условиям - число должно быть минимальное в строке и максимальное по столбцу и те числа которые наоборот максимально в строке и минимально по столбцу.
т.е. матрица вида
8 1 3
7 5 6
9 2 4

число 5 минимальное число в строке и максимальное число в столбце.
а число 7 максимальное число в строке и минимальное число в столбце.

2) Ну раз уже спросил, то спрошу и про другую задачку, тоже на C:
вводится строка символов, не важно каких, просто нужно посчитать сколько каждый символ встречается в данной строке.
Думаю там надо с использованием целочисленного массива, для подсчета символов. Но хз как это реализовать на C.

p.s. буду очень благодарен за помощь. спасибо.
boog вне форума Ответить с цитированием
Старый 23.12.2010, 03:17   #2
boog
 
Регистрация: 22.12.2010
Сообщений: 3
По умолчанию

вообщем попробовал сделать 2-ю задачку, но тут что-то не то. Иногда правильно выводит, иногда нет. В чем проблема?
Код:
#include <stdio.h>
#include <string.h>

int main(void)
{
    int i,k,j,x=1,y=1;
    int sum[33] = {0};
    char word[50],lit[50],c;
    j = 0;
/*Запись посимвольно в строковый массив*/
    while ((c = getchar()) != '\n') {
        word[j++] = c;
        printf("%c", c);
    }
    lit[0] = word [0];
    sum[0] = 1;
/*Здесь одновременно находим все не одинаковые числа и записываем в строковый массив lit, 
а так же сравниваем каждый символ на повторяемость и уникальность, еще подсчитываем 
инкрементируя значение по адресу целочисленного массива sum(под теми же индексами, что и в lit)*/
    for(k=1; k<=j; k++){
        for(i=0; i<=x; i++)
        if (word[k] == lit[i]){
            ++sum[i];
            break;
        }
        else if(y == i) {
            lit[y] = word[k];
            ++sum[y];
            y++;
        }
        ++x;
    }
    puts("");
/*Вывод буковок из lit и их количество в строке word*/
    for (i = 0; i < y; i++) {
        c = lit[i];
        printf("%c - %d\n", c, sum[i]);
    }
    return 0;
}
boog вне форума Ответить с цитированием
Старый 23.12.2010, 13:13   #3
boog
 
Регистрация: 22.12.2010
Сообщений: 3
По умолчанию

первую так и не получается придумать, как написать
boog вне форума Ответить с цитированием
Старый 23.12.2010, 13:19   #4
kenwood2010
Пользователь
 
Регистрация: 26.11.2010
Сообщений: 97
По умолчанию

kenwood20072@rambler.ru
напиши договоримся!
kenwood20072@rambler.ru ICQ: 701 302 135. (Программирование на C++, С. Решение задач по физике)
kenwood2010 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача на min и max KREGI Помощь студентам 14 14.01.2016 14:35
MAX, MIN ='MT4'|ASK!....... lite Microsoft Office Excel 7 27.07.2010 16:46
поменять min на max бургер Паскаль, Turbo Pascal, PascalABC.NET 17 27.04.2010 19:33
подпрограма(max/min) misha25525 Помощь студентам 2 07.04.2010 19:45
min max Alpha_Dog Фриланс 10 15.03.2010 19:27