コード例 #1
0
ファイル: BonTMatrix.cpp プロジェクト: Flymir/coin-all
/** Construct from a CoinPackedMatrix*/
TMat::TMat(const CoinPackedMatrix &M, MatrixStorageType T):
  iRow_(NULL), jCol_(NULL), value_(NULL), nnz_(M.getNumElements()),
  capacity_(M.getNumElements()), columnOrdering_(), rowOrdering_(),
  nonEmptyRows_(), nonEmptyCols_(){
  create(M);
  make_upper_triangular(T);
}
コード例 #2
0
ファイル: main.c プロジェクト: jrocketfingers/asp
int main(void)
{
    unsigned short matrix_n;
    unsigned short input = 10000;
    int default_value, row, column, value;

    printf("========== UPPER TRIANGULAR MATRIX IMPLEMENTATION ==========\n");
    printf("=== Input your matrix size (< %d): ", MAX_MATRIX_N);
    scanf("%d", &matrix_n);
    printf("=== Input your default value: ");
    scanf("%d", &default_value);

    matrix_t *matrix = make_upper_triangular(matrix_n, default_value);

    render_menu();

    while(input != 0)
    {
        printf("=== Choose an option: ");

        scanf("%d", &input);

        switch(input) {
            case 1:
                print_matrix(matrix);
                break;
            case 2:
                printf("=== Input the <row> <column> <value>: ");
                scanf("%d %d %d", &row, &column, &value);
                matrix->set(matrix, row, column, value);
                break;
            case 3:
                printf("=== Input the <row> <column>: ");
                scanf("%d %d", &row, &column);
                printf("=== Value is: %d\n", matrix->get(matrix, row, column));
                break;
            case 4:
                printf("=== Number of non-default elements is: %d\n", upper_triangular_count_non_default_values(matrix));
                break;
            case 9:
                render_menu();
                break;
            case 0:
                break;
            default:
                printf("Wrong choice!\n");
                break;
        }
    }

    free(matrix);

    return 0;
}