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

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

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 07.06.2012, 19:38   #1
mykl
Новичок
Джуниор
 
Регистрация: 04.03.2012
Сообщений: 2
Восклицание Несколько простых задач 1-го курса

Пожалуйста, помогите срочно до завтра... Нужно для допуска к экзамену. Если что, для благодарности кину рублей 50-100 на тел. Спасибо зараннее.


1. Написать программу, которая определяет номер строки квадратной матрицы, сумма элементов которой максимально.

2. Написать программу, которая выводит на экран таблицу стоимости, например, яблок в диапозоне от 100 г. до 1 кг. с шагом 100 г. Ниже приведён рекомендуемый вид экрана программы во время ее работы (данные, введёные пользователем, выделены полужирным шрифтом).

Введите цену одного кг и нажмите ENTER (копейки от рублей отделяйте точкой) --> 16.50

Вес Стоимость
(г) (руб)
100 1.65
200 3.30
300 4.95
400 6.60
500 8.25
600 9.90
700 11.55
800 13.20
900 14.85
1000 16.50

Последний раз редактировалось mykl; 07.06.2012 в 19:59.
mykl вне форума Ответить с цитированием
Старый 08.06.2012, 12:19   #2
8Observer8
Старожил
 
Аватар для 8Observer8
 
Регистрация: 02.01.2011
Сообщений: 3,327
По умолчанию

Денег не нужно! Я вам просто показываю, как надо писать программы!

Я заполнил матрицу случайными вещественными числами.



result.txt


main.c
Код:
#include <stdio.h>
#include <stdlib.h>

#define BEGIN_OF_RANGE 1
#define END_OF_RANGE 100

double random(int y1, int y2);

int main()
{
    double **d;
    double sum, max_sum;
    int i, j, n, max_sum_row;
    char* filename = "result.txt";
    FILE* fp;

    fp = fopen(filename, "w");

    printf("Enter size of matrix: ");
    scanf("%d", &n);
    putchar('\n');
    printf("Completed. See file \"%s\"\n", filename);

    // выделяем память
    d = (double **) malloc(n*sizeof(double));
    for (i = 0; i < n; i++) {
        d[i] = (double *) malloc(n*sizeof(double));
    }

    // заполняем матрицу случайными вещественными числами и
    // выводим их в файл
    fprintf(fp, "Matrix: %dx%d\n\n", n, n);
    for (i = 0; i < n; i++) {
        for (j = 0; j < n; j++) {
            d[i][j] = random(BEGIN_OF_RANGE, END_OF_RANGE);
            fprintf(fp, "%15.3lf", d[i][j]);
        }
        fprintf(fp, "\n");
    }
    fprintf(fp, "\n");

    // отыскиваем строку с максимальной суммой элементов
    sum = 0.0, max_sum = 0, max_sum_row = 0;
    for (i = 0; i < n; i++) {
        for (j = 0; j < n; j++) {
            sum += d[i][j];
        }
        fprintf(fp, "sum_row[%d] = %.3lf\n", i, sum);
        if (sum > max_sum) {
            max_sum = sum;
            max_sum_row = i;
        }
        sum = 0.0;
    }

    // выводим результат на экран
    fprintf(fp, "\nmax_sum = %.3lf\n", max_sum);
    fprintf(fp, "max_sum_row = %d\n", max_sum_row);

    // освобождаем память
    for (i = 0; i < n; i++) {
        free(d[i]);
    }
    free(d);

    // закрываем файл
    fclose(fp);
    return 0;
}

// random: возвращает вещественное число из указанного диапазона
double random(int y1, int y2) {
    // y = kx + b, y[y1, y2], x[0, 1]
    double x, y;
    int k, b;

    // точка x = 0, y = y1
    b = y1;

    // точка x = 1, y = y2
    k = y2 - b;

    x = (double)rand()/(RAND_MAX+1.0);

    y = (double)k * x + (double)b;

    return y;
}
P.S. Пусть срок прошёл, но из этой программы вы можете многое для себя извлечь.
P.S.S. И на будущее, обращайтесь с такими просьбами в раздел фриланса: http://programmersforum.ru/forumdisplay.php?f=29

Последний раз редактировалось 8Observer8; 08.06.2012 в 12:50.
8Observer8 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
несколько простых задач C++ mego4el Помощь студентам 3 15.02.2011 23:27
Валютный калькулятор с запоминанием курса по датам и выбор курса по дате shaturaweb Общие вопросы C/C++ 0 30.01.2011 22:34
Несколько простых задач по делфи... Repac123456 Фриланс 4 24.10.2010 15:07
Несколько простых задач по JS maoK Помощь студентам 0 01.12.2009 20:33