Calculadora de Inversiones Inmobiliarias
Info
Created On: April 22, 2026
Created By:
Tags
AI
Model: gpt-4o-mini
Time: 22 seconds
Prompt Tokens: 0
Completion Tokens: 0
Total Token Cost: 0
Get This App On Your Website
Copy Code
1. Copy the code above with the iframe and link.
2. Paste the code into your website.
3. Resize the iframe to fit your website.
Javascript, HTML, CSS Code
Copy
<html>
<head>
<script type="text/javascript"> window.addEventListener('error', function(event) { var message = JSON.parse(JSON.stringify(event.message)); var source = event.filename; var lineno = event.lineno; var colno = event.colno; var error = event.error; window.parent.postMessage({ type: 'iframeError', details: { message: message, source: source, lineno: lineno, colno: colno, error: error ? error.stack : '' } }, '*'); }); window.addEventListener('unhandledrejection', function(event) { window.parent.postMessage({ type: 'iframePromiseRejection', details: { reason: event.reason } }, '*'); }); </script>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Calculadora de Inversiones Inmobiliarias</title>
<meta name="description" content="Calculadora interactiva para proyectos inmobiliarios que ayuda a presentar información financiera como enganche, pago mensual y retorno de inversión (ROI).">
<meta name="keywords" content="Calculadora, Inversiones, Inmobiliarias, Enganche, ROI, Financiera">
<!-- Libraries -->
<!-- jQuery (3.6.0) -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js" crossorigin="anonymous"></script>
<!-- Bootstrap CSS (5.3.3) -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" crossorigin="anonymous">
<!-- Bootstrap JS (5.3.3) -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.min.js" crossorigin="anonymous">
</script>
<!-- Font Awesome (6.6.0) -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@6.6.0/css/fontawesome.min.css" crossorigin="anonymous">
<script type="text/javascript">
try {
document.addEventListener("DOMContentLoaded", function() {
$('#calculateBtn').click(function() {
const price = parseFloat($('#price').val().replace(/,/g, ''));
const downPaymentPercentage = parseFloat($('#downPaymentPercentage').val()) / 100;
const months = parseInt($('#months').val());
const annualGrowthRate = parseFloat($('#annualGrowthRate').val()) / 100;
const deliveryYears = parseInt($('#deliveryYears').val());
if (isNaN(price) || isNaN(downPaymentPercentage) || isNaN(months) || isNaN(annualGrowthRate) || isNaN(deliveryYears)) {
alert("Por favor, ingrese todos los campos correctamente.");
return;
}
const downPayment = price * downPaymentPercentage;
const totalInvestment = downPayment;
const futureValue = price * Math.pow(1 + annualGrowthRate, deliveryYears);
const grossProfit = futureValue - price;
const monthlyPayment = (futureValue / months).toFixed(2);
const roi = ((grossProfit / totalInvestment) * 100).toFixed(2);
$('#results').html(`
<h5>Resultados:</h5>
<p>Enganche Total: $${downPayment.toFixed(2)}</p>
<p>Inversión Total: $${totalInvestment.toFixed(2)}</p>
<p>Pago Mensual: $${monthlyPayment}</p>
<p>Valor Futuro de la Propiedad: $${futureValue.toFixed(2)}</p>
<p>Ganancia Bruta: $${grossProfit.toFixed(2)}</p>
<p>ROI sobre el Enganche: ${roi}%</p>
`);
});
});
} catch (error) {
throw error;
}
</script>
<style>
body {
background: linear-gradient(to right, #ff7e5f, #feb47b);
color: #333;
font-family: 'Arial', sans-serif;
}
#main-container {
margin-top: 50px;
background: white;
border-radius: 15px;
padding: 20px;
box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
}
h2 {
text-align: center;
color: #ffffff;
}
#calculateBtn {
background-color: #28a745;
color: white;
border: none;
border-radius: 10px;
transition: background-color 0.3s;
}
#calculateBtn:hover {
background-color: #218838;
}
#results {
margin-top: 20px;
background: #f8f9fa;
border-radius: 10px;
padding: 15px;
}
</style>
<link rel="canonical" href="https://calculator.tools/prompt/10604/">
<meta charset="utf-8">
</head>
<body>
<div id="main-container" class="container">
<h2>Calculadora de Inversiones Inmobiliarias</h2>
<div class="form-group">
<label for="price">Precio de Venta ($):</label>
<input type="text" class="form-control" id="price" placeholder="Ingrese el precio" required>
</div>
<div class="form-group">
<label for="downPaymentPercentage">Porcentaje de Enganche (%):</label>
<input type="number" class="form-control" id="downPaymentPercentage" placeholder="Ej: 20" required>
</div>
<div class="form-group">
<label for="months">Meses de Enganche:</label>
<input type="number" class="form-control" id="months" placeholder="Ej: 24" required>
</div>
<div class="form-group">
<label for="annualGrowthRate">Tasa de Crecimiento Anual (%):</label>
<input type="number" class="form-control" id="annualGrowthRate" placeholder="Ej: 5" required>
</div>
<div class="form-group">
<label for="deliveryYears">Años a Entrega:</label>
<input type="number" class="form-control" id="deliveryYears" placeholder="Ej: 3" required>
</div>
<button id="calculateBtn" class="btn btn-primary btn-block">Calcular</button>
<div id="results" class="mt-3"></div>
</div>
<script type="text/javascript"> var localStoragePrefix = "ct-{{ cachebreaker }}"; var lastSave = 0; function saveLocal(data) { if (Date.now() - lastSave < 1000) { return; } let cookie = localStoragePrefix + "=" + JSON.stringify(data) + "; path=" + window.location.pathname + "'; SameSite=Strict"; cookie += "; expires=" + new Date(Date.now() + 1000 * 60 * 60 * 24 * 365 * 1000).toUTCString(); document.cookie = cookie; lastSave = Date.now(); } function loadLocal() { var cookiePrefix = localStoragePrefix + "="; var cookieStart = document.cookie.indexOf(cookiePrefix); if (cookieStart > -1) { let cookieEnd = document.cookie.indexOf(";", cookieStart); if (cookieEnd == -1) { cookieEnd = document.cookie.length; } var cookieData = document.cookie.substring(cookieStart + cookiePrefix.length, cookieEnd); return JSON.parse(cookieData); } } </script>
<script type="text/javascript"> window.addEventListener('load', function() { var observer = new MutationObserver(function() { window.parent.postMessage({height: document.documentElement.scrollHeight || document.body.scrollHeight},"*"); }); observer.observe(document.body, {attributes: true, childList: true, subtree: true}); window.parent.postMessage({height: document.documentElement.scrollHeight || document.body.scrollHeight},"*"); }); </script>
</body>
</html>